알고리즘 문제풀이/프로그래머스
[프로그래머스/Level 1] 크기가 작은 부분 문자
노력의천재
2024. 1. 13. 14:17
https://school.programmers.co.kr/learn/courses/30/lessons/147355
부분 문자열의 길이가 18자리가 될 수 있으므로 int의 범위가 넘어간다.
따라서 long long 타입으로 변환해야 하는 것이 중요
#include <string>
#include <vector>
#include <algorithm>
#include <iostream>
using namespace std;
typedef long long ll;
int solution(string t, string p) {
int answer = 0;
int tLen = t.size(), pLen = p.size();
for (int i = 0; i < tLen - pLen + 1; i++) {
ll num = stoll(t.substr(i, pLen));
if (num <= stoll(p)) answer++;
}
return answer;
}