#include <iostream>
#include <vector>
#include <string>
using namespace std;
void solution(vector<string> v, int max){
string answer = "";
for (int j = 0; j < max; j++) {
for (int k = 0; k < 5; k++) {
if (j >= v[k].length()){
continue;
} else {
answer += v[k][j];
}
}
}
cout << answer << endl;
}
int main(){
vector<string> v;
string input;
// get input
for (int i = 0; i < 5; ++i) {
cin >> input;
v.push_back(input);
}
// find a max string length
int max = (int)v[0].length();
for (int k = 1; k < 5; k++) {
if (max < v[k].length()){
max = (int)v[k].length();
}
}
solution(v, max);
return 0;
}
쉬운 문제인데 왜 이렇게 오래 걸렸을까? 음..
제일 큰 문제는 현재 탐색 중인 위치가 빈 공간일 때 직전의 문자를 또 출력하는거였다. 아직도 이유를 모르겠다. 디버깅 했을 때 이 문제를 찾았는데, 해결은 못했다. 도저히 뭐가 문젠지 모르겠어서. 그냥 다른 접근법으로 문제를 해결했다. 왜지..