programmers
[Programmers Level 1] 크기가 작은 부분 문자열 Javascript
냠냠맨
2022. 12. 25. 08:17
⚡문제정보
문자열 매개변수 두개가 주어지는데 모두 숫자로 이루어져있네요
t 문자열에서 p 문자열만큼 잘라서 작은 값이 있을 경우 +를 해주면 되는 문제인데
숫자의 대소관계는 앞자리 하나로도 정할 수 있으니까
서로 앞자리가 같은 경우에만 전체를 짤라서 비교해주면 될 것 같습니다.
🔍접근방법
t[i]의 첫자리가 p[0]과 같은 경우에만 slice()를 통해 문자열 전체를 비교한다.
🔍나의 풀이
function solution(t, p) {
let answer = 0
for( i = 0 ; i < t.length -p.length +1 ; i++) {
if(t[i] < p[0]) answer++
else if(t[i] == p[0]) {
let spliter = t.slice(i,i + p.length)
if(spliter <= p) answer++
}
}
return answer
}
설명은 아래에 서술합니다.
function solution(t, p) {
let answer = 0
//정답 저장할 변수
for( i = 0 ; i < t.length -p.length +1 ; i++) {
if(t[i] < p[0]) answer++
//만약 p[0]이 더크다면 뒷자리는 비교할 필요도 없이 p가 더큼
else if(t[i] == p[0]) {
let spliter = t.slice(i,i + p.length)
if(spliter <= p) answer++
}
//만약 두값의 첫자리가 같다면 slice를 통해 전체를 비교해줌
}
return answer
}
반응형