[백준 11719번] 그대로 출력하기 2 (<string> Getline 문자열 공백 허용 입력)
컴퓨터/알고리즘

[백준 11719번] 그대로 출력하기 2 (<string> Getline 문자열 공백 허용 입력)

 

 

https://www.acmicpc.net/problem/11719

 

11719번: 그대로 출력하기 2

입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄이 주어질 수도 있고, 각 줄의 앞 뒤에 공백이

www.acmicpc.net

입력

  1. 입력 받은 대로 출력하는 프로그램을 작성하시오.
  • 이게 아주 중요하다!.
    • 공백포함 문자열을 받을 수 있는지를 생각해봐야한다!

출력

         Hello
 
Baekjoon         
      Online Judge

저 빈 공간도 포함해서 담아줘야 하는것인데..
cin은 공백, 포함 안한다.. ㅠ


생각방법

cin말고 입력을 공백 포함하고 받을수 없을까?
getline사용하면 된다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
 
int main()
{
    ios::sync_with_stdio(false); cin.tie(NULL);
    string str, token;
    getline(cin, str); getline(cin, token);
    int cnt = 0int start = 0;
    while (str.find(token) != string::npos)
    {
        int firstCharPos = str.find(token);cnt++;
        str = str.substr(firstCharPos+token.length(), str.length());
    }
    cout << cnt << '\n';
    return 0;
}
 
cs

 


참고 블로그

https://shjz.tistory.com/96

 

[C++] 공백이 포함된 문자열 입력받기(char array, string : getline)

C, C++에서 입력을 받을 때 "공백이 포함된 문자열"을 입력받는 법을 소개한다. Code 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 #include #include using namespace std; int main(){..

shjz.tistory.com