프로그래머스/Lv. 0(코딩테스트 입문)
[프로그래머스 코딩테스트] A로 B 만들기(Java)
Sigfriede
2023. 4. 2. 01:11
문제 설명
문자열 before와 after가 매개변수로 주어질 때, before의 순서를 바꾸어 after를 만들 수 있으면 1을, 만들 수 없으면 0을 return 하도록 solution 함수를 완성해보세요.
제한사항
- 0 < before의 길이 == after의 길이 < 1,000
- before와 after는 모두 소문자로 이루어져 있습니다.
입출력 예
before | after | result |
"olleh" | "hello" | 1 |
"allpe" | "apple" | 0 |
import java.util.Arrays;
class Solution {
public int solution(String before, String after) {
char[] beforeChars = before.toCharArray();
char[] afterChars = after.toCharArray();
Arrays.sort(beforeChars);
Arrays.sort(afterChars);
String sortedBefore = new String(beforeChars);
String sortedAfter = new String(afterChars);
if (sortedBefore.equals(sortedAfter)) {
return 1;
} else {
return 0;
}
}
}
String을 문자로 받는 char 배열을 각각 생성했습니다. 이를 정렬하여 before와 after의 문자가 같은지 equals로 비교합니다. 같으면 1을, 다르면 0을 반환합니다. 배열을 생성하지 않고 charAt(i)로 각 문자를 받아서 비교하는 방법도 괜찮았을 것 같습니다.