The Way

백준 11718번: 그대로 출력하기 본문

PS/백준 온라인 저지

백준 11718번: 그대로 출력하기

Jeonggyun 2017. 8. 22. 20:14

백준 온라인 저지(BOJ) 11718번 문제

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



1. 문제 요약

입력 받은 대로 출력하기.

각 줄은 공백으로 시작하지 않고, 공백으로 끝나지 않음.



2. 알고리즘

입출력을 어느 정도 이해해야 풀 수 있는 문제이다.

보통 사람들은 입력은 콘솔창을 이용해서 하거나 또는 파일 입출력을 한다.

이 때, '입력의 끝'이 언제냐를 아는 것이 하나의 관건이다.


보통 입력받은 것이 아무 것도 없을 경우를 판별하지만,

이번 문제는 괜찮지만 다음 문제(11719번)와 같은 경우는 중간중간 빈 줄이 있기 때문에 문제가 발생한다.


다행히도 대부분의 입출력 함수들은 입력 버퍼의 끝에 갔을 때 -1이나 false의 값을 반환한다.


이를 EOF(End of File)이라고 하며, -1과 동일한 값이다.

콘솔 창에서 입력의 끝이 어디냐고 물을 수 있는데, ctrl+z를 누르면 입력이 끝났다는 것을 의미한다.

이를 이해하면 문제를 그리 어렵지 않게 풀어낼 수 있다.



3. 코드

#include <iostream>
#include <string>

using namespace std;

int main() {
	char a;
	a = getchar();

	while (a != -1) {
		putchar(a);
		a = getchar();
	}

	return 0;
}


'PS > 백준 온라인 저지' 카테고리의 다른 글

백준 2839번: 설탕 배달  (0) 2017.08.22
백준 11719번: 그대로 출력하기 2  (0) 2017.08.22
백준 10172번: 개  (0) 2017.08.22
백준 1008번: A/B  (0) 2017.08.22
백준 1004번: 어린 왕자  (0) 2017.08.22
Comments