https://school.programmers.co.kr/learn/courses/30/lessons/120886
before와 after를 toCharArray()를 이용해 전부 char 배열로 변경한다.
그 후 Arrays.sort()를 이용해 a-z까지 정렬한다.
for문을 활용해 정렬된 char배열 두개의 같은 위치에 같은 문자가 위치해있다면 int 인 size에 1씩 증가시켜준다.
그렇고 size에 1씩 누적이 될 것이고 두 배열이 일치하지 않는 부분이 있다면 1이 증가되지 않고 before의 길이만큼 size의 숫자가 증가하지 않을 것이다.
size가 비교할 대상인 before의 길이와 일치하다면, 1을 그렇지 않다면 0을 리턴해준다.
import java.util.*;
class Solution {
public int solution(String before, String after) {
int answer = 0;
char[] bList = before.toCharArray();
char[] aList = after.toCharArray();
Arrays.sort(bList);
Arrays.sort(aList);
int size = 0;
for(int i =0; i<bList.length; i++){
if(bList[i]==aList[i]){
size +=1;
}
}
if(size == before.length()){
answer = 1;
}else {
answer = 0;
}
return answer;
}
}
'프로그래머스 문제풀어보기' 카테고리의 다른 글
[Lv.0] k의 개수 (0) | 2023.03.07 |
---|---|
[Lv.0] A로 B 만들기 (0) | 2023.03.06 |
[Lv.0] 모스부호(1) (0) | 2023.03.03 |
[Lv.0] 문자열 정렬하기(2) (0) | 2023.03.02 |
[Lv.0] 369게임 (0) | 2023.03.02 |
댓글