열 개씩 끊어 출력하기 성공
시간 제한 | 메모리 제한 | 제출 | 정답 | 맞은 사람 | 정답 비율 |
---|---|---|---|---|---|
1 초 | 256 MB | 23930 | 11924 | 10534 | 51.652% |
문제
알파벳 소문자와 대문자로만 이루어진 길이가 N인 단어가 주어진다.
한 줄에 10글자씩 끊어서 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 단어가 주어진다. 단어는 알파벳 소문자와 대문자로만 이루어져 있으며, 길이는 100을 넘지 않는다. 길이가 0인 단어는 주어지지 않는다.
출력
입력으로 주어진 단어를 열 개씩 끊어서 한 줄에 하나씩 출력한다. 단어의 길이가 10의 배수가 아닌 경우에는 마지막 줄에는 10개 미만의 글자만 출력할 수도 있다.
예제 입력 1
BaekjoonOnlineJudge
예제 출력 1
BaekjoonOn lineJudge
예제 입력 2
OneTwoThreeFourFiveSixSevenEightNineTen
예제 출력 2
OneTwoThre eFourFiveS ixSevenEig htNineTen
<풀이과정>
C++ 언어를 이용한 풀이
문자열 자료형과 getline함수를 사용해서 한 줄을 통째로 입력받는다.
입력받은 글자 수만큼 반복하여 출력하면서 10으로 나눠 떨어질 때마다 줄바꿈을 하여 10개씩 출력되도록한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | #include<iostream> #include<string> #include<vector> using namespace std; int main() { string s; getline(cin, s); for (int i = 0; i < s.size(); i++) { cout << s[i]; if ((i+1) % 10 == 0) { cout << '\n'; } } cout << '\n'; return 0; } | cs |
C언어를 이용한 풀이
%10s를 이용하여 문자열을 입력 받을 때 10개씩 끊어서 입력되도록 한다.
끊어서 입력받은 것을 출력.
더이상 출력할 입력 값이 없으면 루프는 종료된다.
1 2 3 4 5 6 7 8 9 10 | #include<cstdio> using namespace std; int main(){ char s[101]; while(scanf("%10s",s)==1){ printf("%s\n",s); } return 0; } | cs |
둘다 정답
C언어를 사용한 코드가 역시 더 효율적이다.
'개발자의 기본기 > 알고리즘 문제' 카테고리의 다른 글
<백준 알고리즘> 10815번 숫자 카드 (0) | 2020.09.26 |
---|---|
<백준 알고리즘> 1764번 듣보잡 (0) | 2020.09.26 |
<백준 알고리즘> 10824번 네 수 (0) | 2020.09.26 |
<백준 알고리즘> 11720번 숫자의 합 (0) | 2020.09.26 |
<백준 알고리즘> 2839번 설탕배달 (0) | 2020.09.26 |