class Solution {
public int solution(String t, String p) {
int len = p.length();
long num = Long.parseLong(p);
int result = 0;
for (int i = 0; i < t.length() - len + 1; i++) {
long diff = Long.parseLong(t.substring(i, i + len));
if (diff <= num) result++;
}
return result;
}
}
이 문제 또한 쉽게 풀리긴 했다. 하지만 왜인지 계속해서 몇 개의 테스트에서만 틀린다고 나왔다.
정말 이해가 가지 않았고, 아무리 생각해봐도 몰랐었다. 결국 못참고 구글링을 통해 답안을 확인했다. 그 답은 int가 아닌 long을 통해 풀었어야 했다. 왜냐면 문자열을 숫자로 변환하는 과정에서 문자열을 생각없이 크게 작성하면 int 범위에서 받질 못할 것이라고 생각한다.
[링크] : 개인저장소