728x90
728x90
문제
입력 받은 대로 출력하는 프로그램을 작성하시오.
입력
입력이 주어진다. 입력은 최대 100줄로 이루어져 있고, 알파벳 소문자, 대문자, 공백, 숫자로만 이루어져 있다. 각 줄은 100글자를 넘지 않으며, 빈 줄은 주어지지 않는다. 또, 각 줄은 공백으로 시작하지 않고, 공백으로 끝나지 않는다.
출력
입력받은 그대로 출력한다.
예제 입력 1
Hello
Baekjoon
Online Judge
예제 출력 1
Hello
Baekjoon
Online Judge
알고리즘 분류
- 구현
- 문자열
문제 출처
https://www.acmicpc.net/problem/11718
문제 해결 방법
- [단계별로 풀어보기] 문제집에 새로 추가된 문제이다.
- 브론즈V 레벨의 문제이지만, 정답률이 29%인 문제이다.
- 문자열에 대해 이해하고 있으면 쉽게 풀 수 있었던 문제였다.
- 공백을 포함한 문자열을 그대로 출력시켜야 하므로 @getline@ 함수를 사용해야 한다.
- @getline@ 함수를 사용하기 위해서는 @<string>@ 헤더를 불러와야 한다.
문제에서 입력 횟수와 관련된 조건이 없을 경우
- 위의 문제와 같이 몇 번의 문자열을 입력하라는 입력 횟수와 관련된 조건이 없을 경우 반복문(@for@ 또는 @while@) 문의 매개변수(Parameter)에 입력을 받는 코드를 넣어준다.
for (입력 받는 코드) { }
while (입력 받는 코드) { }
- 또는 다음과 같이 @입력 받는 코드@에 @!= EOF@ 조건을 추가해줄 수 있다.
- EOF(End of File)이란 '파일의 끝', 즉 더 이상 읽을 데이터가 없음을 의미한다.
for (입력 받는 코드 != EOF) { }
while (입력 받는 코드 != EOF) { }
- @cin@, @getline@과 같은 함수를 사용할 때, 성공적으로 입력 받았을 경우, EOF가 아닌 값이 출력된다.
코드
#include <iostream>
#include <string>
using namespace std;
string S;
void Solve() {
while (getline(cin, S)) {
cout << S << '\n';
}
}
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
Solve();
return 0;
}
채점 결과
참고
- [단계별로 풀어보기] > [문자열]
- 브론즈V
728x90
728x90
'Problem Solving > BOJ' 카테고리의 다른 글
[BOJ-25206][C++] 너의 평점은 (0) | 2023.03.01 |
---|---|
[BOJ-10988][C++] 팰린드롬인지 확인하기 (0) | 2023.03.01 |
[BOJ-10812][C++] 바구니 순서 바꾸기 (0) | 2023.03.01 |
[BOJ-2444][C++] 별 찍기 - 7 (0) | 2023.02.27 |
[BOJ-10811][C++] 바구니 뒤집기 (0) | 2023.02.23 |
[BOJ-10813][C++] 공 바꾸기 (0) | 2023.02.23 |
[BOJ-10810][C++] 공 넣기 (0) | 2023.02.23 |
[BOJ-1541][C++] 잃어버린 괄호 (0) | 2023.02.20 |