The 6th Zhejiang Provincial Collegiate Programming Contest->ProblemK:K-Nice

http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3212

题意:构造出一个n*m的有k个上下左右的和等于中间数的小矩阵的任意矩阵。

就是输出k个全是0的矩阵(符合条件),然后其他的矩阵用数字填掉

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 int main()
 4 {
 5     int T, n, m, k, i, j;
 6     scanf("%d", &T);
 7     while(T--) {
 8         scanf("%d%d%d", &n, &m, &k);
 9             k = (n-2)*(m-2) - k;//不符合条件的矩阵
10             for(i = 1; i <= n; i++) {
11                 printf("0");
12                 for(j = 1; j <= m-2; j++) {
13                     if(k>0)
14                         printf(" %d", k--);
15                     else
16                         printf(" 0");
17                 }
18                 printf(" 0
");
19             }
20         }
21     return 0;
22 }
我会一直在
原文地址:https://www.cnblogs.com/zhien-aa/p/5220340.html