알고리즘/프로그래머스 1단계

프로그래머스 - 그림 확대 - C++

게임만드는학생 2023. 7. 29. 21:01

https://school.programmers.co.kr/learn/courses/30/lessons/181836

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

#include <string>
#include <vector>

using namespace std;

vector<string> solution(vector<string> picture, int k) {
    vector<string> answer;
    for(int i=0;i<picture.size();i++)
    {
        string s="";
        for(int j=0;j<picture[i].length();j++)
        {
            for(int h=0;h<k;h++)
            {
                s+=picture[i][j];
            }
        }
        for(int h=0;h<k;h++)
        {
            answer.push_back(s);
        }
    }
    return answer;
}

설명

반복문

k배 만큼 늘려진다 == '.' 이나 'X' 가 k배 만큼 늘어나고 늘려진 그 문자열도 k배 만큼 증가한다고 이해하면 간단한 문제이다. 

 

코드는 먼저 제일 바깥쪽에서 picture의 문자열 개수 만큼 반복문을 돌며 먼저 k배 늘어난 반복문을 만들고 그 반복문을

answer에 k번 삽입한다. 

모든 문자열에 대해 이 작업을 수행하면 답이 나온다.