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\n");
19             }
20         }
21     return 0;
22 }

 

相关文章:

  • 2022-12-23
  • 2021-08-31
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-09-05
猜你喜欢
  • 2021-08-02
  • 2021-12-08
  • 2021-08-27
  • 2022-02-05
  • 2021-12-06
  • 2021-08-13
  • 2021-10-18
相关资源
相似解决方案