👉 문제 바로가기
약간의 수학적 사고력입력 받은 신문 기사를 (r * zr)(c * zc) 행렬로 확대 출력하는데, 각 행과 열의 인덱스를 zr과 zc로 나누어 올림한 인덱스를 입력 받은 신문 기사 배열의 인덱스로 하여 출력 해주면 된다.
양수의 나눗셈 올림 방법은 여러가지가 있지만 나는 다음의 식을 사용했다.
[x = 피제수(dividend), y = 제수(divisor)]
#include <iostream>
int main() {
std::ios::sync_with_stdio(false);
std::cin.tie(NULL);
std::cout.tie(NULL);
int r, c, zr, zc;
char article[51][51];
char result[251][251];
std::cin >> r >> c >> zr >> zc;
for (int i = 1; i <= r; ++i) {
for (int j = 1; j <= c; ++j)
std::cin >> article[i][j];
}
for (int i = 1; i <= r*zr; ++i) {
for (int j = 1; j <= c*zc; ++j)
std::cout << article[(i+zr-1) / zr][(j+zc-1) / zc];
std::cout << '\n';
}
return 0;
}