코테/프로그래머스
프로그래머스 시저 암호
65살까지 코딩
2022. 1. 15. 11:02
728x90
반응형
class Solution {
public String solution(String s, int n) {
String answer = "";
char[] chars = s.toCharArray();
//아스키 코드를 알아야 풀 수 있는문제
for(int i =0; i<chars.length; i++) {
if (chars[i] != ' ') {
//char가 a와 z사이에 있다면 +n
if (chars[i] >= 97 && chars[i] <= 122) {
chars[i] += n;
//+n한 값이 z를 넘어선다면 a에서 부터 다시 시작하게 바꿔줌
if(chars[i] >122){
chars[i] -=26;
}
//char가 A와 Z사이에 있다면 +n
} else if (chars[i] >= 65 && chars[i] <= 90) {
chars[i] += n;
//+n한 값이 Z를 넘어선다면 A에서 부터 다시 시작하게 바꿔줌
if(chars[i] >90){
chars[i] -=26;
}
}
}
}
for(int i =0; i<chars.length; i++){
answer += chars[i];
}
return answer;
}
}
출처:https://programmers.co.kr/learn/courses/30/lessons/12926
코딩테스트 연습 - 시저 암호
어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 "AB"는 1만큼 밀면 "BC"가 되고, 3만큼 밀면 "DE"가 됩니다. "z"는 1만큼 밀
programmers.co.kr
728x90
반응형