문자열을 다루는 문제입니다. 중간에 if (curInSkipChar(cur, skipChar))
이 부분은 함수로 따로 구현할 필요 없이 String에다 contains를 써서 다음과 같이 간단히 해결할 수 있습니다.
if (skip.contains(String.valueOf(cur)))
import java.util.*;
class Solution {
public String solution(String s, String skip, int index) {
String answer = "";
char[] skipChar = skip.toCharArray();
int total = "z".charAt(0) - "a".charAt(0) + 1;
for (int i = 0; i < s.length(); i++) {
int step = 0;
char cur = s.charAt(i);
while (step < index) {
cur = (char) (((cur + 1) - "a".charAt(0)) % total + "a".charAt(0));;
if (curInSkipChar(cur, skipChar)) { // 간단한 방법이 있습니다.
continue;
}
step++;
}
answer += Character.toString(cur);
}
return answer;
}
public boolean curInSkipChar(char cur, char[] skipChar) {
for (char c : skipChar) {
if (c == cur) {
return true;
}
}
return false;
}
}