최대 1 분 소요

스크린샷, 2024-05-26 21-16-13

생각 과정

해당 문제를 풀기 위해 나는 vector를 통한 동적 할당, 문자열을 뒤집는 모듈, 문자열을 뒤집기 위한 stringstream 클래스 사용을 생각하게 되었다.
이 문제는 그렇게 큰 어려움 없이 한번에 풀었다.

오늘의 회고록(24.05.25)

vector 말고도 다른 컬랙션을 많이 익히도록 노력하자.(아직 익숙하지가 않다..)

구현 내용

#include <iostream>
#include <sstream>
#include <string>
#include <vector>
using namespace std;

string Reverse(string str);

int main(){
    string str1 = "", str2 = "";

    int N = 0;
    
    cin >> N;
    cin.ignore();
    vector<string> vs[N];
    
    for(int i = 0; i < N; i++){
        getline(cin, str1);
        stringstream s1(str1);
        
        while(s1>>str2){
            vs[i].push_back(Reverse(str2));
        }
    }

    vector<string>::iterator it;
    for(int i = 0; i < N; i++){
        for(it=vs[i].begin(); it != vs[i].end(); it++){
            cout << *it << " ";
        }
        cout << "\n";
    }
}

string Reverse(string str){
    char temp;
    int j = 0;

    for(int i = str.length() - 1; i > j; i--){
        temp = str[i];
        str[i] = str[j];
        str[j] = temp;
        j++;
    }
    return str;
}

댓글남기기