ZOJ 3212(K)
来源:互联网 发布:小q书桌类似软件 编辑:程序博客网 时间:2024/05/22 11:39
#include<iostream>#include<cstdio>#include<string>#include<vector>#include<algorithm>#include<cstring>#include<queue>#include<stack>using namespace std;#define N 100int g[N][N];int main(){#ifdef CDZSCfreopen("i.txt", "r", stdin);#endifint t, n, m, k;scanf("%d", &t);while (t--){memset(g, 0, sizeof(g));scanf("%d%d%d", &m, &n, &k);k = (n - 2)*(m - 2) - k;for (int i = 0; i < m; i++){for (int j = 1; j < n - 1; j++){if (k){g[i][j] = k--;}}}for (int i = 0; i < m; i++){int f = 1;for (int j = 0; j < n; j++){if (f){f = 0;printf("%d", g[i][j]);}elseprintf(" %d", g[i][j]);}printf("\n");}}return 0;}
这一题错了很多次,题意是给你n*m大小的矩阵,使里面有K个nice小矩阵,nice矩阵定义是上下左右的和等于中间的值,开始一看可能没有什么思路,但是只要看到样例2的输出他是给了我们提示,我们只要个构造K个全0矩阵就可以,这样就简单多了。那么问题来了,非0的地方用什么填呢?我开始全部用1填,但是错了,一直到比赛结束都没有找到,原来在角落那里会出现多余的nice矩阵,这样定义一个变量num=1,每填一个就增加1,就不会发生多余的矩阵了。
This is a super simple problem. The description is simple, the solution is simple. If you believe so, just read it on. Or if you don't, just pretend that you can't see this one.
We say an element is inside a matrix if it has four neighboring elements in the matrix (Those at the corner have two and on the edge have three). An element inside a matrix is called "nice" when its value equals the sum of its four neighbors. A matrix is called "k-nice" if and only if k of the elements inside the matrix are "nice".
Now given the size of the matrix and the value of k, you are to output any one of the "k-nice" matrix of the given size. It is guaranteed that there is always a solution to every test case.
Input
The first line of the input contains an integer T (1 <= T <= 8500) followed by T test cases. Each case contains three integers n, m, k (2 <= n, m <= 15, 0 <= k <= (n - 2) * (m - 2)) indicating the matrix size n * m and it the "nice"-degree k.
Output
For each test case, output a matrix with n lines each containing m elements separated by a space (no extra space at the end of the line). The absolute value of the elements in the matrix should not be greater than 10000.
Sample Input
24 5 35 5 3
Sample Output
2 1 3 1 14 8 2 6 11 1 9 2 92 2 4 4 30 1 2 3 00 4 5 6 00 0 0 0 00 0 0 0 00 0 0 0 0
Author: ZHUANG, Junyuan
Source: The 6th Zhejiang Provincial Collegiate Programming Contest
- ZOJ 3212(K)
- zoj 3212 K-Nice(数学题)
- ZOJ 3212 K-Nice(思维)
- ZOJ - 3212 K-Nice
- zoj 3212 K-Nice
- ZOJ 3212 K-Nice
- ZOJ 3212 K-Nice
- ZOJ 3212 K-Nice【】
- ZOJ 3212 K-Nice
- ZOJ 3212K-Nice(构造)
- ZOJ 2975 数学(K)
- zoj 3212 K-Nice 解题报告
- 【城会玩系列】ZOJ 3212 K-Nice【思维】
- ZOJ 3332(K)(欧拉路?)DFS
- zoj 3891 K-hash(后缀自动机)
- ZOJ 3621 Factorial Problem in Base K(K进制)
- 01-K Code ZOJ
- zoj-K - Known Notation
- servlet输入输出乱码
- ASP.NET MVC Ajax 请求安全
- 利用FFmpeg将RTSP转码成RTMP发布在RED5
- 一些专业名词
- mysql日志管理
- ZOJ 3212(K)
- 中外合资经营企业与中外合作经营企业的区别
- myeclipse 2014如何安装genymotion插件
- 剑指offer第二十三题【二叉搜索树的后序遍历序列】c++实现
- 一些感悟
- 在Android中使用HttpClient 4.3.x出现NoSuchFieldError的问题
- VB编程小练习
- Android应用开发系列(二)登陆界面
- Mybatis 学习笔记