문제설명
알고리즘
1. t 문자열을 하나하나 조회한다
2. 조회시 현재 인덱스에서 p의 길이 -1 보다 작을때만 연산을 하는데, substr로 문자를 자른다
3. compare함수를 사용해서 사전순으로 더 앞이면 작거나 같다 -> 답 갯수 증가
코드
#include <string>
#include <vector>
#include <iostream>
using namespace std;
int solution(string t, string p) {
int answer = 0;
for(int i=0; i<t.size(); i++){
if(i + p.size()-1 < t.size()){ //범위를 넘어가지 않도록 계산
string temp = t.substr(i, p.size()); //잘라서 불러오기
if(temp.compare(p)<=0) // 사전순으로 더 앞인지 확인
answer++;
}
else
break;
}
return answer;
}
'Algorithm' 카테고리의 다른 글
[프로그래머스] 게임 맵 최단거리 (0) | 2023.02.24 |
---|---|
[프로그래머스] 가장 가까운 같은 글자 (0) | 2023.02.24 |
[프로그래머스] 귤 고르기 (0) | 2023.02.22 |
[프로그래머스] 명예의 전당(1) (0) | 2023.02.22 |
[프로그래머스] 과일장수 (0) | 2022.11.14 |