알고리즘/프로그래머스
[프로그래머스] A로 B만들기
CooNiHong
2022. 12. 6. 20:49
문제 링크
https://school.programmers.co.kr/learn/courses/30/lessons/120886
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제 설명
문자열 before와 after가 매개변수로 주어질 때, before의 순서를 바꾸어 after를 만들 수 있으면 1을, 만들 수 없으면 0을 return 하도록 solution 함수를 완성해보세요.
제한사항
- 0 < before의 길이 == after의 길이 < 1,000
- before와 after는 모두 소문자로 이루어져 있습니다.
입출력 예
before | after | result |
"olleh" | "hello" | 1 |
"allpe" | "apple" | 0 |
입출력 예 설명
입출력 예 #1
- "olleh"의 순서를 바꾸면 "hello"를 만들 수 있습니다.
입출력 예 #2
- "allpe"의 순서를 바꿔도 "apple"을 만들 수 없습니다.
나의 풀이
Java
import java.util.Arrays;
class Solution {
public int solution(String before, String after) {
String[] strArr1 = before.split("");
String[] strArr2 = after.split("");
Arrays.sort(strArr1);
Arrays.sort(strArr2);
if(Arrays.equals(strArr1, strArr2)) return 1;
return 0;
}
}
문자열 자르고 오름차순으로 정렬해서 둘이 동일하면 1, 다르다면 0
JavaScript
function solution(before, after) {
return before.split('').sort().join('') === after.split('').sort().join('') ? 1 : 0;
}
Java의 코드를 한줄로 줄였습니다.
728x90