백준/Inha Algorithm Study Group

DAY2 초급 - 백준 11718, 11719번 (C++)

FDEE 2020. 9. 3. 09:37

www.acmicpc.net/problem/11718

 

11718번: 그대로 출력하기

입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄은 주어지지 않는다. 또, 각 줄은 공백으로 시�

www.acmicpc.net

www.acmicpc.net/problem/11719

 

11719번: 그대로 출력하기 2

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

www.acmicpc.net

<답안>

#include <iostream>
using namespace std;
int main()
{
    string input;
    while(getline(cin,input))
    {
        cout<<input<<"\n";
    }
    return 0;
}

 

<설명>

두 문제 모두 같은 코드로 해결이 가능했다

 

공백까지 입력받는 방법을 알고있는지 여부였다

크게 getline(cin,string,'\n') 방법과 cin.getline(char[],n,'\n') 방법 중 사용하면 되는 식이였다

 

그중 1번째 방법은 '\n' 즉 엔터가 입력되기 전까지 입력받아 string에 저장이 되기 때문에 상황에 맞아 사용하였고

2번째 방법은 char형태의 배열을 만든다음 배열에 저장되는 식이다

입력종료 케이스는 크기 n-1개만큼 입력 또는 '\n' 입력된 경우 종료되는 경우이다 

 

상황에 따라 잘 쓰면 될것 같다