[BOJ] 10798번: 세로읽기

HyeRyun·2020년 11월 14일
0

Baekjoon Online Judge

목록 보기
9/30

✔️ 문제

😎 소스 코드

#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;
}

✊ 문제를 풀고 나서

쉬운 문제인데 왜 이렇게 오래 걸렸을까? 음..
제일 큰 문제는 현재 탐색 중인 위치가 빈 공간일 때 직전의 문자를 또 출력하는거였다. 아직도 이유를 모르겠다. 디버깅 했을 때 이 문제를 찾았는데, 해결은 못했다. 도저히 뭐가 문젠지 모르겠어서. 그냥 다른 접근법으로 문제를 해결했다. 왜지..

profile
개발개발

0개의 댓글