학습(0)/C++ 문제풀이
그림 확대/ 같은 문자 반복
누가 뭐래도 개발자
2025. 3. 12. 18:53
for문 4개는 선 넘지
#include <string>
#include <vector>
using namespace std;
vector<string> solution(vector<string> picture, int k) {
vector<string> answer;
for (const string& s : picture)
{
string input = "";
for (char c : s)
{
for (int i = 0; i < k; ++i)
{
input.push_back(c);
}
}
for (int i = 0; i < k; ++i)
{
answer.push_back(input);
}
}
return answer;
}
자바의 repeat같은 함수는 없지만, string 생성자를 활용하면 for문을 줄일 수 있다.
#include <string>
#include <vector>
using namespace std;
vector<string> solution(vector<string> picture, int k) {
vector<string> answer;
answer.reserve(picture.size() * k);
for (const string& s : picture) {
string expandedRow = "";
for (char c : s) {
expandedRow += string(k, c);
}
for (int i = 0; i < k; ++i) {
answer.push_back(expandedRow);
}
}
return answer;
}