Algorithm/프로그래머스

[프로그래머스/level1/c++] 서울에서 김서방 찾기

호_두씨 2021. 1. 7. 23:04

문제 :

String형 배열 seoul의 element중 Kim의 위치 x를 찾아, 김서방은 x에 있다는 String을 반환하는 함수, solution을 완성하세요. seoul에 Kim은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다.

 

제한 사항 :

  • seoul은 길이 1 이상, 1000 이하인 배열입니다.
  • seoul의 원소는 길이 1 이상, 20 이하인 문자열입니다.
  • Kim은 반드시 seoul 안에 포함되어 있습니다.

입출력 예 :

seoul return
[Jane,Kim] 김서방은 1에 있다

 

코드 :

#include <string>
#include <vector>

using namespace std;

string solution(vector<string> seoul) {
    string answer = "";
    for(int i=0;i<seoul.size();i++){
        if("Kim"==seoul[i]){
            answer="김서방은 "+to_string(i)+"에 있다";
            break;
        }
    }
    return answer;
}

 

다시 한번 짚고 넘어가기

- int to string

 to_string(int num) //double,long,float도 적용 가능

 

- find함수 활용 :헤더 파일 <altorithm>

  find(first,last,val) : first부터 last 전 까지의 원소들 중 val과 일치하는 첫 번째 원소를 가리키는 반복자를 리턴한다.

만일 일치하는 원소를 찾기 못할 경우 last를 리턴한다.

 int i=find(seoul.begin(),seoul.end(),"Kim")-seoul.begin();

 

도움이 된 글 :

blockdmask.tistory.com/334

 

[C++] to_string 함수에 대해서 (int to string)

안녕하세요. BlockDMask 입니다. 지난번에는 string을 int로 변경하는 stoi 함수에 대해서 알아보았습니다. 오늘은 int를 string으로 변경하는 to_string 함수에 대해서 알아보겠습니다. (string -> int 로 변..

blockdmask.tistory.com

modoocode.com/261

 

C++ 레퍼런스 - find 함수 ()

 

modoocode.com