Algorithm/μΈν”„λŸ°(inflearn)

[JavaScript/section 1] 13 - λŒ€μ†Œλ¬Έμž λ³€ν™˜

_μ„±ν˜Έ_ 2022. 9. 3. 10:59
728x90
λ°˜μ‘ν˜•

πŸ“Œ 문제

λŒ€λ¬Έμžμ™€ μ†Œλ¬Έμžκ°€ 같이 μ‘΄μž¬ν•˜λŠ” λ¬Έμžμ—΄μ„ μž…λ ₯λ°›μ•„ λŒ€λ¬ΈμžλŠ” μ†Œλ¬Έμžλ‘œ μ†Œλ¬ΈμžλŠ” λŒ€λ¬Έμžλ‘œ λ³€ν™˜ν•˜μ—¬ 좜λ ₯ν•˜λŠ” λ¬Έμ œμ΄λ‹€.

 

toUpperCase() λ©”μ„œλ“œμ™€ toLowerCase() λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜λ©΄ κ°„λ‹¨ν•˜κ²Œ 문제 해결이 κ°€λŠ₯ν•˜λ‹€.

for...of λͺ…령문을 μ‚¬μš©ν•˜μ—¬ λΉ™λΉ™ λŒλ©΄μ„œ μ†Œλ¬ΈμžμΈ 경우 toUpperCase() λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜μ—¬ λŒ€λ¬Έμžλ‘œ λ³€ν™˜ν•œ ν›„ answer λ³€μˆ˜μ— λˆ„μ μ‹œμΌœμ£Όκ³ , λŒ€λ¬ΈμžμΈ 경우 toLowerCase() λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜μ—¬ μ†Œλ¬Έμžλ‘œ λ³€ν™˜ν•œ ν›„ answer λ³€μˆ˜μ— λˆ„μ μ‹œμΌœμ£Όλ©΄ λœλ‹€.

 

πŸ“ 풀이

// toUpperCase() λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜μ—¬ νŒλ‹¨
function solution(s) {
  let answer = '';

  for (let x of s) {
    if (x === x.toUpperCase()) answer += x.toLowerCase();
    else answer += x.toUpperCase();
  }

  return answer;
}

console.log(solution('StuDY'));
// charCodeAt() λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜μ—¬ νŒλ‹¨
function solution(str) {
  let answer = '';

  for (let x of str) {
    if (x.charCodeAt() < 91) answer += x.toLowerCase();
    else answer += x.toUpperCase();
  }

  return answer;
}

console.log(solution('StuDY'));