
⚠️ 주의!
프로그래머스에서 낸 코딩 문제에 대한 해답이 들어있습니다.
열람 시 주의해주세요.
프로그래머스에서 낸 코딩 문제에 대한 해답이 들어있습니다.
열람 시 주의해주세요.
프로그래머스
SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 됩니다. "z"는 1만큼 밀면 "a"가 됩니다. 문자열 s와 거리 n을 입력받아 s를 n만큼 민 암호문을 만드는 함수, solution을 완성해 보세요.
char이 덧셈과 뺄셈이 가능하다는 것을 생각하면 편하다.
다만, z를 넘으면 a부터 시작하기 때문에, z를 넘는 문자에 대해서는 - 26을 해주면 된다. 대소문자 구별에 주의하자.(대문자와 소문자 각각 if문을 사용하는 것도 도움이 된다.
정답
class Solution {
public String solution(String s, int n) {
char[] cha = s.toCharArray();
for(int i = 0; i < cha.length; i++){
if(cha[i] == ' '){
continue;
}
char base = (cha[i] >= 'a') ? 'z' : 'Z';
cha[i] = (char)(cha[i] + n);
if(cha[i] > base) { cha[i] -= 26; }
}
return new String(cha);
}
}'코테런 > Programmers' 카테고리의 다른 글
| [코딩 테스트 RUN] PROGRAMMERS LV 2 : 다음 큰 숫자 (0) | 2026.03.25 |
|---|---|
| [코딩 테스트 RUN] PROGRAMMERS LV 1 : 연습문제들 (0) | 2026.02.20 |
