코드스테이츠 Day31
2. ACID
public class Solution {
public String decryptCaesarCipher(String str, int secret) {
String result ="";
// 빈 문자열 거르기
if(str.length()==0) return result;
// 배열에 알파벳 넣어서 인덱스 순서로 복호화?
char[] arr = new char[26];
for(int i=0; i<arr.length; i++){ //ASCII Code를 char로 형변환하여 배열에 알파벳 담기
arr[i] = (char)('a'+i);
}
for(int i=0; i<str.length(); i++){ // 이중 포문으로 돌기. 각 문자에 맞는 알파벳 있는지.
for(int j=0; j<arr.length; j++){
if(str.charAt(i)==' ') {
result += ' ';
break;
}
if(str.charAt(i)==arr[j]) {
if(j-secret >= 0) {
result += arr[j-secret];
break;
}
else {
result += arr[j-secret+26];
break;
}
}
}
}
return result;
}
}
맨 처음에 result 따로 선언 안 하고, 이중 포문 안에서 바로 str = str.replace 했더니 결과가 이상했다. 그래서 혹시? 하고 result 따로 선언해서 더해주니까 정상적으로 결과 도출됨.
어제 반만 통과했던 18번 문제는 아직도 그대로인 상태. 이유가 뭘까,,
<느낀 점>
오늘은 전반적으로 수월했다. 과제가 퀴즈 풀기라서,, ㅎ
SQL은 컴활 공부할 때 잠깐 봤었는데, 지금은 가물한 기억.. ㅋㅋ
문제는 대부분 수월했는데, join이 좀 어려웠다.