프로그래머스 자바
암호해독
class Solution {
public String solution(String cipher, int code) {
String answer = "";
char[] charArray = cipher.toCharArray();
String[] str = new String[charArray.length];
for (int i = 0; i < charArray.length; i++) {
str[i] = String.valueOf(charArray[i]);
}
for (int i = code-1; i < cipher.length(); i+=code) {
answer += str[i];
}
return answer;
}
}
char타입의 배열을 하나 만들어서 문자열을 문자로 나눠서 배열에 저장해주는 함수 toCharArray()를 사용하여 chipher를 charArray에 담아준다.
그리고 String타입의 배열도 하나 만들어주는데 이때 이 배열의 크기는 charArray의 길이로 만들어준다.
반복문안에서 charArray배열을 valueOf()를 사용하여 String배열에 담아준다.
그리고 정수 code번째부터 시작해야하니 시작지점의 인덱스 번호는 code-1로해주고 스텝도 code씩 커지게해준다.
그리고 해당 인덱스의 원소를 String타입의 answer에 더해준다.
0빼기
class Solution {
public String solution(String n_str) {
int a = Integer.parseInt(n_str);
String answer = Integer.toString(a);
return answer;
}
}
정수로 이루어져 있다고 조건에 적혀있으므로 String을 그냥 parseInt()함수를 사용하면 앞에붙어있는 000은 다 사라진다.
그리고 int로 변환한 a를 다시 toString()함수를 사용해 String으로 변환해주면된다.