inp_t
숫자로 구성된 문자열 | "3141592" | 길이는 최대 10,000
inp_p
숫자로 구성된 문자열 | "271" | 길이는 최대 18
=> int의 최댓값인 21억 글자수 보다 큰 값이므로 long으로 관리해야 함
=> t 문자열에서 p 문자열 길이만큼 가져왔을 때, 해당 문자열이 p보다 작거나 같은 횟수를 return
반복문으로 t에서 p길이만큼 substring을 이용해서 가져오고 이를 정수형으로 변환하여 비교 후 카운트
class Solution {
public int solution(String t, String p) {
int answer = 0;
int pLen = p.length();
long p_long = Long.parseLong(p);
for(int i=0; i<t.length()-pLen+1; i++){
if(Long.parseLong(t.substring(i,i+pLen)) <= p_long){
answer+=1;
}
}
return answer;
}
}
TIP : int형의 범위가 [-21억, 21억] 이고, 최대 9글자인 숫자로 구성된 문자열만 int형으로 변환이 가능함을 알아두자