-
728x90
확실히 경험이 적다보니,
한 문제, 한 문제마다 고비인 것 같다.ㅜㅜ(꾸준히 하다보면 나아지겠지?
문제만 봤을때엔 크게 어려워보이지 않았었다.
getline()을 통해서 한 줄씩 문자열을 입력받고,
이 문자열을 stringstream을 이용해 단어별로 끊은 후, SWAP하듯이 바꾼 후 출력!단순히,
이런 함수를 만들어서 하려고 했으나
visualstudio에서는 잘 되었던 코드가
채점 하면 계속
출력 형식이 잘못되었습니다. 라는 메시지가 떴다ㅜㅜ[결론]
아무래도 swap하는 부분에서 오류가 있는 것 같아서,
algorithm 라이브러리 안에있는 reverse()를 그냥 가져다 쓰기로 하였다.reverse(start, end);
- start~end전 까지 역순으로#include <iostream> #include <string> #include <sstream> #include <algorithm> using namespace std; int main() { int t = 0; cin >> t; cin.ignore(256, '\n'); for (int i = 0; i < t; i++) { string str, temp; getline(cin, str); stringstream ss(str); while (ss >> temp) { reverse(temp.begin(), temp.end()); cout << temp << " "; } cout << "\n"; } return 0; }
입력받을때, 주의할 점은
cin.ignore(); 을 해 주지 않는다면.. 입력이 제대로 되지 않는다.엔터가 cin의 버퍼에 남아서 getline을 소모하기 때문이다.
따라서 꼭 버퍼를 비워주어야 한다.ㅎㅎ진짜.. 이정도면 인간승리인듯 ㅎ :)
(그냥 가져다 쓸걸..ㅜ)
역시.. 일단 reverse라는 것이 제공되는 라이브러리가 있다는 것을 몰라서 생긴 문제인 것 같다..앞으로 열공하자 ㅜㅜ
'알고리즘 풀이 > 백준' 카테고리의 다른 글
[10845] 백준 알고리즘 : 큐(C++) (0) 2019.11.20 [1874] 백준 알고리즘 : 스택 수열(C++) (0) 2019.11.20 [9012] 백준 알고리즘 : 괄호(C++) (0) 2019.11.20 [10828] 백준 알고리즘 : 스택(C++) - 공부후 (0) 2019.11.15 [10828] 백준 알고리즘 : 스택(C++) - 공부전 (0) 2019.11.14 댓글