*문제 출처는 프로그래머스에 있습니다.
문제 제목: 문자열안에 문자열 (0단계)
문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/120817
문제 설명
문자열 str1, str2가 매개변수로 주어집니다. str1 안에 str2가 있다면 1을 없다면 2를 return하도록 solution 함수를 완성해주세요.
제한 사항
- 1 ≤ str1의 길이 ≤ 100
- 1 ≤ str2의 길이 ≤ 100
- 문자열은 알파벳 대문자, 소문자, 숫자로 구성되어 있습니다.
입출력 예
입출력 예 설명
나의 풀이
#include <string>
#include <vector>
using namespace std;
int solution(string str1, string str2) {
int answer = 0;
size_t n = str1.find(str2);
if (n != string::npos) answer = 1;
else answer = 2;
return answer;
}
※ 알아야 할 것
string::npos는 C++의 std::string 클래스에서 사용되는 정적 상수이다. 이 값은 문자열을 검색하거나 찾는 과정에서 실패했을 때 반환되는 특별한 값이다. 그리고 size_t는 부호 없는 정수 타입이다.
그리고 find는 인덱스 번호를 찾아서 반환해준다.
'코딩테스트(프로그래머스 & 백준) > 프로그래머스-C++' 카테고리의 다른 글
Programmers / 연속된 수의 합 / C++ (1) | 2024.01.11 |
---|---|
Programmers / 잘라서 배열로 저장하기 / C++ (0) | 2024.01.11 |
Programmers / 옹알이 (1) / C++ (1) | 2024.01.03 |
Programmers / 최댓값 만들기(1) / C++ (0) | 2024.01.02 |
Programmers / 문자열 겹쳐쓰기 / C++ (1) | 2024.01.02 |