https://school.programmers.co.kr/learn/courses/30/lessons/147355#
처음에는 그냥 슉슉..
stoi 로 비교했다
근데 p의 길이가 18
그러면 최대 18자리숫자?
불가능하다. string에서도 불가능하고 long을 해도 불가넝.
날 기다리는건
(signal: aborted (core dumped))
요것뿐..
그래서 어떻게 하지 고민하다가
어쩔수없다..
최대 18개니까
그만큼 일일히 비교하는걸로,,
작거나 같아야 하니까
같을 경우까지 비교해보고
그냥 노가다로 비교해줬다.
#include <string>
using namespace std;
int solution(string t, string p) {
int answer = 0;
int size = p.length();
for (int i = 0 ; i < t.length() - size + 1 ; i++) {
bool same = true;
for (int j = 0 ; j < size ; j++) {
if (t[i + j] > p[j]) {
same = false;
break;
}
else if (t[i + j] < p[j]) {
same = false;
answer += 1;
break;
}
}
if (same)
answer += 1;
}
return answer;
}
😊😊😊
항상 주어진 입력값의 크기, 범위를 꼭 보고
자료형을 뭐 쓸지도 생각해보자.