- ๋ฌธ์ :
- ๋ฌธ์์ด S์ ๊ฑฐ๋ฆฌn์ ์ ๋ ฅ๋ฐ์ n๋งํผ ์ด๋์ํจ ์ํธ๋ฌธ์ ๋ง๋ค๊ธฐ
package org.example;
public class proPrac23 {
public String solution(String s, int n) {
String answer = "";
for(int i=0; i<s.length(); i++){
// ๋ฌธ์์ด s์ ๊ธธ์ด๋งํผ ๋ฐ๋ณต
char ch = s.charAt(i);
// ch(charํ)์ s์ ๋ฌธ์์ด์ charํ์ผ๋ก ํ๊ธ์๋ง ๋ฐ์์ ์ ๋ฌํ๋ค.
if(Character.isLowerCase(ch)){ //์๋ฌธ์
// Charater.isLowerCase๋ผ๋ ํจ์๋ฅผ ์ฌ์ฉํด์ ๋์๋ฌธ์๋ฅผ ๊ตฌ๋ณํ๋ค.
ch = (char)((ch-'a'+n)%26 + 'a');
// s์ i๋ฒ์งธ ๋ฌธ์์์ 'a(97)'๋ฅผ ๋นผ๊ณ , ์ด๋ํ์(n)์ ๋ ํ ํ ๋ค์ a๋ฅผ ๋ํด์ค๋ค
// ex s(i=c) : 99(c) - 97(a) + 1(n) = 3 + 'a(97)' == 100(d)
// z๊ฐ ๋์ฌ๊ฒฝ์ฐ +ํ๋ฉด ์๋ฌธ์ ๋ฒ์๋ฅผ ๋ฒ์ด๋๊ธฐ ๋๋ฌธ์ %26์ผ๋ก ๋๋ ๋๋จธ์ง๋ฅผ ๊ตฌํ๋ค.
}
else if(Character.isUpperCase(ch)){ //๋๋ฌธ์
ch = (char)((ch-'A'+n)%26+ 'A');
// s์ i๋ฒ์งธ ๋ฌธ์์์ 'A(65)'๋ฅผ ๋นผ๊ณ , ์ด๋ํ์(n)์ ๋ ํ ํ ๋ค์ a๋ฅผ ๋ํด์ค๋ค
// Z๊ฐ ๋์ฌ๊ฒฝ์ฐ +ํ๋ฉด ๋๋ฌธ์ ๋ฒ์๋ฅผ ๋ฒ์ด๋๊ธฐ ๋๋ฌธ์ %26์ผ๋ก ๋๋ ๋๋จธ์ง๋ฅผ ๊ตฌํ๋ค.
}
answer += ch;
}
return answer;
}
public static void main(String[] args) {
proPrac22 s = new proPrac22();
System.out.println("์
๋ ฅ : " + "AB" + ", ๊ฒฐ๊ณผ : " + s.solution("AB", 1));
System.out.println("์
๋ ฅ : " + "z" + ", ๊ฒฐ๊ณผ : " + s.solution("z", 1));
}
}
๐ Character.isUpperCase ์ Character.isLowerCase
- isUpperCase, isLowerCase๋ ์ ๋ ฅ๋ฐ์ ์ธ์๊ฐ ๋๋ฌธ์์ธ์ง, ์๋ฌธ์์ธ์ง ํ๋จํ๋ ํจ์์ด๋ค.
- ๋ง์ผ๋ฉด True, ํ๋ฆฌ๋ฉด False๋ฅผ ๋ฐํํ๋ค.
'๐ Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํญํด99] ์๊ณ ๋ฆฌ์ฆ ๋ชจ์๊ณ ์ฌ - ์์์ ๊ฐ์์ ๋ง์ (0) | 2022.11.23 |
---|---|
[Programmers] Lv1. ์ ๊ท ์์ด๋ ์ถ์ฒ (0) | 2022.11.23 |
[Programmers] Lv1. ์์ ๋ง๋ค๊ธฐ (0) | 2022.11.23 |
[ํญํด99] ์๊ณ ๋ฆฌ์ฆ ๋ชจ์๊ณ ์ฌ - ๋ช์๊ฐ ํ๋๋ผ? (0) | 2022.11.22 |
[ํญํด99] ์๊ณ ๋ฆฌ์ฆ ๋ชจ์๊ณ ์ฌ - ์ ๋๋ฅ ๋ฐ๊ฒฌ (0) | 2022.11.22 |