반응형
1528번 문제는 문자열의 index를 indices의 숫자의 인덱스로 바뀌어서 문자열이 나와야한다.
var restoreString = function(s, indices) {
const resultArray = [];
for (let i = 0; i < s.length; i++) {
resultArray[i] = s[indices[i]];
}
console.log(resultArray);
return resultArray.join("");
};
indices[i]로 s의 인덱스 때 새로운 배열에 넣어주면 되지 않을까 생각했다. 그리고 다 넣어주고 난 뒤,
join메소드를 사용해서 합쳐주기로 문자열로 넘겨주기로 했다.
하지만 계속 꼬였다. for 문이 0부터 돌아서 중간에 code 가 cdoe로 나와서 계속 케이스에서 실패했다.
그런데 만약 그 i의 인덱스 숫자와 indices안에 숫자와 같은 것을 찾아서 그것을 사용해서 나오게 한다면..?
indexOf라는 메서드를 이용했다.
var restoreString = function(s, indices) {
const resultArray = [];
for (let i = 0; i < s.length; i++) {
resultArray[i] = s[indices.indexOf(i)];
}
return resultArray.join("");
};
저 부분을 생각하지 못해서 어제 오늘 고생했다.. 알고리즘은 조금씩 조금씩 늘어난다고 하는데 아직 멀은 것 같다..
반응형
'알고리즘문제' 카테고리의 다른 글
1630. Arithmetic Subarrays (0) | 2022.03.29 |
---|---|
938. Range Sum of BST (0) | 2022.03.14 |
문자열 내 마음대로 풀어보기 - 프로그래머스 (0) | 2021.10.03 |
시저 암호 - 프로그래머스 (0) | 2021.09.30 |
제일 작은 수 제거하기 - 프로그래머스 (0) | 2021.09.24 |