🫠 Programmers (level 0)
👉🏻 문제 56번 (문자열 밀기) : 문자열 맨 뒤의 문자를 맨 앞으로 밀어, 요청하는 B의 값과 같다면 1, 안되면 -1, 밀지 않아도 B가 나온다면 0 반환
function solution(A, B) {
// A와 B의 값이 처음부터 같다면 0
if(A === B) return 0
// A를 배열로 생성
let array1 = A.split('')
// A를 한 바퀴 순회하여 B와 같은지 확인
let i = 0
let result = 0
while(1) {
if(i <= array1.length-1) { // A 길이만큼 한 바퀴 순회
array1.unshift(array1.pop())
if(array1.join('') === B) {
result = i + 1
break
}
}
i++
if(i == array1.length) { // A 길이만큼 순회했지만 B와 같지 않을 경우
result = -1
break
}
}
return result
}
✅ 확인할 점
💡 while문을 통해 돌려서 그런가.. 코드가 엄청 길어졌다..
💡 다른 사람의 풀이를 봤는데, 레전드다..(어이없어서 웃음만.. 나 뭐 한 거지..)
let solution=(a,b)=>(b+b).indexOf(a)
진짜 천재 너무 많다.. 😂 indexOf() 쓸 생각을 왜 못했냐고..!
'프로그래머스 풀이 > level0' 카테고리의 다른 글
[Programmers] level 0) 문제 '저주의 숫자 3' 풀이 (0) | 2023.04.10 |
---|---|
[Programmers] level 0) 문제 '치킨 쿠폰' 풀이 (0) | 2023.04.05 |
[Programmers] level 0) 문제 '직사각형 넓이 구하기' 풀이 (0) | 2023.04.04 |
[Programmers] level 0) 문제 '암호 해독' 풀이 (0) | 2023.03.17 |
[Programmers] level 0) 문제 '컨트롤 제트' 풀이 (0) | 2023.03.14 |