728x90
문제 설명
문제 풀이 방법
- 이번 문제는 t 문자열에서 p의 길이만큼 자른 문자열과 p의 숫자로써의 크기 비교를 해서
p가 더 크거나 같은 경우의 수를 반환하는 문제이다. - 우선 for문으로 t의 문자열을 순회하며 p의 길이만큼 문자열을 잘라준 뒤 p와 크기 비교를 해주면 된다.
내가 작성한 코드 1
function solution(t, p) {
let answer = 0;
for(let i=0; i<t.length-(p.length-1); i++){
if(i === 0 && t.slice(0, p.length+1)*1 <= p*1) {
answer += 1;
}
else if(t.slice(i, p.length+i)*1 <= p*1) {
answer += 1;
}
}
return answer
}
위의 코드로 통과 했지만 코드를 개선할 수 있을거 같아 추가적으로 for문을 수정해서
다른 코드를 작성하고 통과했다.
내가 작성한 코드 2
function solution(t, p) {
let answer = 0;
for(let i = 0; i <= t.length - p.length; i++){
if(t.slice(i, p.length+i)*1 <= p*1) {
answer += 1;
}
}
return answer
}
728x90
'코딩 테스트 > 프로그래머스 코딩 테스트 연습' 카테고리의 다른 글
[JS] 2Level / 2017 팁스타운 / 예상 대진표 (0) | 2023.06.02 |
---|---|
[JS] 1Level / 연습 문제 / 문자열 내 마음대로 정렬하기 (0) | 2023.06.01 |
2Level / Summer/Winter Coding(~2018) / 영어 끝말잇기 (0) | 2023.06.01 |
2Level / 2017 팁스타운 / 짝지어 제거하기 (0) | 2023.05.31 |
2Level / 연습 문제 / 피보나치 수 (0) | 2023.05.29 |