문제
#27648: 증분 어레이 생성(acmicpc.net)
#27648: 증분 배열 생성
$N$, $M$ 및 $K$는 첫 번째 줄에 지정됩니다.
$\left(1 \le N , M \le 1\,000,1 \le K \le 100\,000 \right)$
www.acmicpc.net
설명
문제는 배열의 첫 번째 부분(1, 1)에서 시작하여 오른쪽 아래로 모든 경로에 대해 오름차순으로 배열을 만드는 것입니다.
사용할 숫자는 1에서 K까지의 정수이지만 다음과 같은 조건은 없습니다.
B. 같은 번호를 두 번 사용하거나 특정 번호를 가지지 않고 어레이를 자유롭게 구성할 수 있습니다.
3 5 15에서 다음 배열을 구성했습니다.
1 2 3 4 5
2 3 4 5 6
3 4 5 6 7
#include <iostream>
using namespace std;
int main() {
int N, M, K;
cin >> N >> M >> K;
if (1 * N + M - 1 > K) {
cout << "NO";
}
else {
int count = 1;
cout << "YES\n";
for (int i = 0; i < N; i++) {
for (int j = 0; j < M; j++) {
cout << count << " ";
count++;
}
count = i + 2;
cout << "\n";
}
}
return 0;
}