๐LEVEL1 : ์์ ์ํธ
- ์ ํ : ๊ตฌํ
๐ํ์ด๋ฐฉ๋ฒ
์ ๋ ฅ๊ฐ์ด String ์ด๊ณ , ํ ์๋ฆฌ๋ง๋ค n์ฉ ์์ง์ฌ์ ์ต์ข ๊ฒฐ๊ณผ๊ฐ์ ๋ด์ผํ๋ค.
1) String์ ํ ์๋ฆฌ์ฉ ํ์ธ์ ํด์ผํ๋ค. -> char๋ฅผ ์ฌ์ฉํด์ผ๊ฒ ๋ค๊ณ ์๊ฐ.
2) ๋์๋ฌธ์๋ฅผ ํจ๊ป ์ ๋ ฅ๋ฐ๋๋ค. -> ๋์๋ฌธ์ ๊ตฌ๋ถ์ ํด์ค์ผ๊ฒ ๋ค๊ณ ์๊ฐ.
3) char๋ intํ์ผ๋ก ๋ณ๊ฒฝํ ์ ์๊ณ , ๊ณ์ฐ์ ํ ์ ์๊ธฐ ๋๋ฌธ์, ์ ๋ ฅ๋ฐ์ n ๊ณผ ๊ฐ ์๋ฆฌ char ๊ฐ์ ๋ํด์ค๋ค.
4) z ๋๋ Z ๋ฅผ ๋์ด๊ฐ๋ ๋ฒ์๋ ์์ผ ์ ์๊ธฐ ๋๋ฌธ์ a~z์ ๊ฐ์(=26)๋ฅผ ๋นผ์ค๋ค. (z or Z ๋ฒ์๋ฅผ ๋ฒ์ด๋๊ฒ ๋๋ค๋ฉด)
5) ์์ด ์ํ๋ฒณ์ ์ ์ธํ ๋ค๋ฅธ ๋ฌธ์(๊ณต๋ฐฑ)๋ ๋ค์ด๊ฐ ์ ์๊ธฐ ๋๋ฌธ์ ์์ธ๋ก ์ฒ๋ฆฌํด์ค๋ค.
๐์ฝ๋
class Solution {
public String solution(String s, int n) {
StringBuilder answer = new StringBuilder();
for (int i = 0; i < s.length(); i++) {
char sChar = s.charAt(i);
if (Character.isUpperCase(sChar)) {
answer.append( n + sChar <= 'Z' ? (char) (n+sChar) : (char) (n+sChar -26));
} else if (Character.isLowerCase(sChar)) {
answer.append( n + sChar <= 'z' ? (char) (n+sChar) : (char) (n+sChar -26));
} else {
answer.append(sChar);
}
}
return answer.toString();
}
}
๐ ๋ฌธ์ ๋งํฌ
https://school.programmers.co.kr/learn/courses/30/lessons/12926
LIST
'์๊ณ ๋ฆฌ์ฆ > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ๋ฌด์ง์ ๋จน๋ฐฉ ๋ผ์ด๋ธ - JAVA (0) | 2020.11.03 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] ์ฟผ๋์์ถ ํ ๊ฐ์ ์ธ๊ธฐ - JAVA (0) | 2020.10.19 |