프로그래머스 0단계 - A를 B로 만들기

이종현·2024년 1월 2일
0

코딩테스트

목록 보기
2/24
post-thumbnail

문제 설명

문자열 before와 after가 매개변수로 주어질 때, before의 순서를 바꾸어 after를 만들 수 있으면 1을, 만들 수 없으면 0을 return 하도록 solution 함수를 완성해보세요.

제한사항

  • 0 < before의 길이 == after의 길이 < 1,000
  • before와 after는 모두 소문자로 이루어져 있습니다.

입출력 예

beforeafterresult
"olleh""hello"1
"allpe""apple"0

💡 문제 이해하기 → 접근 방법 → 코드 설계 → 코드 구현

1. 문제 이해하기

before가 가지고 있는 문자를 이용해서 after를 만들 수 있느냐 아니냐이기 때문에 문제 자체를 이해하는 건 크게 어렵지 않았다.

2. 접근 방법

단순하게 before와 after의 문자 자체를 배열로 만든 다음에 정렬하고 그 둘을 비교했을 때 일치하면 문제가 해결될 것 같다.

3. 코드 설계

after = “olleh” 의 문자를 split를 이용해서 배열로 변환

배열로 변환된 두 가지를 비교하기 위해서는 join을 이용해서 문자열로 변환한 뒤 일치하는 지 확인

일치한다면 1을 반환하고 일치하지 않는다면 0을 반환하게 한다.

4. 코드 구현

function solution(before, after) {
  let beforeArr = before.split('')
  let afterArr = after.split('')

  if (beforeArr.sort().join() !== afterArr.sort().join()) {
    return 0
  }
  return 1
}
profile
데이터리터러시를 중요하게 생각하는 프론트엔드 개발자

0개의 댓글