mang_dev
맹꽁거리는 개발자
mang_dev
전체 방문자
오늘
어제
  • 분류 전체보기 (185)
    • Frontend (2)
      • Next.js (1)
    • Backend (3)
      • GraphQL (2)
    • Book (1)
      • 기타 (1)
    • Old (177)
      • 알고리즘 퍼즐 (1)
      • 백준 (131)
      • 프로그래머스 (0)
      • Codility (15)
      • LeetCode (7)
      • Codewars (1)
      • Codeforces (0)
      • Django (6)
      • React (2)
      • Naver Map Api (3)
      • Web UI (4)
      • Introduction to Cloud (2)
hELLO · Designed By 정상우.
mang_dev

맹꽁거리는 개발자

백준 9093번 단어 뒤집기 // C++
Old/백준

백준 9093번 단어 뒤집기 // C++

2020. 2. 26. 01:43

문제

 

문장이 주어졌을 때, 단어를 모두 뒤집어서 출력하는 프로그램을 작성하시오. 단, 단어의 순서는 바꿀 수 없다. 단어는 영어 알파벳으로만 이루어져 있다.

입력

첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있으며, 문장이 하나 주어진다. 단어의 길이는 최대 20, 문장의 길이는 최대 1000이다. 단어와 단어 사이에는 공백이 하나 있다.

출력

각 테스트 케이스에 대해서, 입력으로 주어진 문장의 단어를 모두 뒤집어 출력한다.

 


 

풀이

 

getline 함수를 통하여, string에 한 줄 씩을 입력받았다.

 

그 후, string을 한 글자씩 살펴보면서 ' '가 아니라면 temp에 더해주었고, ' '가 나온 경우에는 temp를 거꾸로 출력해주었다.

 

마지막 단어는 ' '가 없으므로 출력을 한 번 더 해주면 된다.

 


 

코드

더보기
#include <iostream>
#include <string>

using namespace std;

int main() {
	string str;
	int test_case;
	cin >> test_case;
	getchar();

	for (int t = 0; t < test_case; t++) {
		string temp;
		getline(cin, str);

		for (int i = 0; i < str.length(); i++) {
			if (str[i] != ' ')
				temp.push_back(str[i]);
			else {
				for (int j = temp.length() - 1; j >= 0; j--)
					printf("%c", temp[j]);
				printf(" ");
				temp.clear();
			}
		}

		for (int j = temp.length() - 1; j >= 0; j--)
			printf("%c", temp[j]);
		printf("\n");
	}

	return 0;
}
저작자표시 (새창열림)

'Old > 백준' 카테고리의 다른 글

백준 17219번 비밀번호 찾기 // C++  (0) 2020.03.03
백준 17626번 Four Squares // C++  (0) 2020.03.03
백준 6588번 골드바흐의 추측 // C++  (0) 2020.02.26
백준 9613번 GCD 합 // C++  (0) 2020.02.26
백준 1934번 최소공배수 // C++  (0) 2020.02.26
    'Old/백준' 카테고리의 다른 글
    • 백준 17219번 비밀번호 찾기 // C++
    • 백준 17626번 Four Squares // C++
    • 백준 6588번 골드바흐의 추측 // C++
    • 백준 9613번 GCD 합 // C++
    mang_dev
    mang_dev

    티스토리툴바