【EOJ Monthly 2018.10 - A】oxx 的小姐姐们(模拟,水题,填充矩阵,输出格式有坑)

题干:

Time limit per test: 1.0 seconds

Memory limit: 512 megabytes

oxx 和他的小姐姐(们)躺在图书馆前的大草坪上看星星。

有强迫症的 oxx 想要使得他的小姐姐们正好躺成一块 n×m 的长方形。

已知小姐姐的形状是 1×p 的长方形(可以横着或竖着躺)。小姐姐从 1 到 nm 编号总共有 nm 个(如果可以的话,绝对够用)。

P.S. 小姐姐是 1×p 的是因为她们比较苗条。

Input

输入三个整数 n , m , p (1≤n,m,p≤100 ,p 是质数)。

Output

如果不行,输出 No

否则输出 Yes。随后输出 n 行 m 列正整数用空格隔开。同一个小姐姐用相同的数字表示,不同的小姐姐用不同的数字表示。数字应是在 [1,nm] 范围内的正整数。同一个数字至多出现 p 次,这 p 次应该在横向连续,或者纵向连续。

如果有多解输出任意一解。

Examples

Input

2 3 2

Output

Yes
2 2 3
1 1 3

Input

3 3 2

Output

No

Input

3 3 3

Output

Yes
2 2 2
1 1 1
3 3 3

Input

2 3 2

Output

Yes
6 3 3
6 4 4

Input

4 2 2

Output

Yes
2 7
2 7
5 5
3 3

Note

请注意对于最后一组样例输出:

2 1
2 1
1 2
1 2

是不合法的。因为不同的小姐姐必须用不同的数字表示。你居然把 1 号小姐姐和 2 号小姐姐克隆了 QAQ。

 

解题报告:

   题目不算难那,直接模拟就好了。先由样例可以试出来No的条件。然后剩下Yes的构造一个解就可以了。首先为了统一,令列数大于行数(swap一下),即保证这是一个躺着的矩形,然后按行遍历,填数字,然后对于剩下还没有填的,按每一列进行遍历填数字就可以了。最后输出的时候看最初是否行列交换过,来判断输出格式。

AC代码:

#include<bits/stdc++.h>using namespace std;
int n,m,p; 
int maze[105][105];
bool bk[105][105];
int main()
{cin>>n>>m>>p;if(n%p==0 || m%p==0) puts("Yes");else {puts("No");return 0;}int cur = 1,cnt = 0;bool flag = 0;if(n > m) flag=1,swap(n,m);for(int i = 1; i<=n; i++) {for(int j = 1; j<=m-(m%p); j++) {maze[i][j] = cur;bk[i][j]=1;cnt++;if(cnt % p == 0) cur++;}}int st = m-(m%p)+1;for(int i = st; i<=m; i++) {for(int j = 1; j<=n; j++) {if(bk[j][i] == 0) {maze[j][i] = cur;bk[j][i]=1;cnt++;if(cnt%p==0) cur++;}}}if(flag) {for(int i = 1; i<=m; i++) {for(int j = 1; j<=n; j++) {printf("%d%c",maze[j][i],j==n?'\n' : ' ');}}}else {for(int i = 1; i<=n; i++) {for(int j = 1; j<=m; j++) {printf("%d%c",maze[i][j],j==m?'\n' : ' ');}}}return 0 ;
}

总结:

   1.有的时候多开一个bk数组会省好多事。   

   2.刚开始对于剩下的想直接遍历整个矩阵:如果bk==0那就填数,但是发现不行,因为就填不成以列了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/441547.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据结构数组计算机中的应用,2018考研计算机:数据结构数组和广义表复习重点...

2018考研计算机&#xff1a;数据结构数组和广义表复习重点2017-08-17 16:00|考研集训营《数据结构(C语言版)》复习重点在二、三、六、七、九、十章&#xff0c;考试内容两大类&#xff1a;概念&#xff0c;算法&#xff0c;自从计算机专业课统考以后&#xff0c;专业课考试题型…

【HDU - 5672】String(尺取法)

题干&#xff1a; There is a string SS.SS only contain lower case English character.(10≤length(S)≤1,000,000)(10≤length(S)≤1,000,000) How many substrings there are that contain at least k(1≤k≤26)k(1≤k≤26) distinct characters? Input There are mul…

【HDU - 2030 】汉字统计 (C语言汉字编码,长知识)

题干&#xff1a; 统计给定文本文件中汉字的个数。 Input 输入文件首先包含一个整数n&#xff0c;表示测试实例的个数&#xff0c;然后是n段文本。 Output 对于每一段文本&#xff0c;输出其中的汉字的个数&#xff0c;每个测试实例的输出占一行。 [Hint:]从汉字机内码的…

【HDU - 1257】最少拦截系统 (标解dp,贪心可过,最长上升子序列类问题)

题干&#xff1a; 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能超过前一发的高度.某天,雷达捕捉到敌国的导弹来袭.由于该系统还在试用阶段,所以只有一套系统,因此有可能…

ae toolbarcontrol运行时没有_想办法让AE跑起来

好像大家都已经习惯了ADOBE系列软件的高能量吸收&#xff0c;谁让人家功能强大呢&#xff0c;尤其是AE&#xff0c;发展势头越来越猛&#xff0c;目前可以直接生成JSON文件&#xff0c;解析为代码文件后跨平台使用于安卓和苹果设备上&#xff0c;算是直接搭上了火热的移动互联快…

C++中两个常用的控制语句格式的函数(width和precision函数)

width 语法: int width();int width( int w );函数 width()返回当前的宽度。可选择参数w用于设定宽度大小。宽度是指每一次输出中显示的字符的最小数目。例如&#xff1a; cout.width( 5 );cout << "2";displays 2(在一个2的后面紧跟着四个空格) precision 语…

如何将风险应用加入白名单_理财要如何将资金分散呢?可以参考风险分散和分享经济红利的思路...

#理财大赛第三季#银行理财是值得投资者配置资金的&#xff0c;收益相对稳定&#xff0c;它的风险等级也很明显地标注在产品说明书和风险揭示书上&#xff0c;投资者可以根据自身投资偏好选择适合的理财。大部分买过银行理财的人都会选择将所有资金投入进去。银行理财确实是一个…

【洛谷 - 快来签到】(数学,公式,溢出爆longlong的处理)

题干&#xff1a; 题目描述 sum2581114…&#xff0c;输入正整数n&#xff0c;求sum的前n项和。 输入输出格式 输入格式&#xff1a; 输入一个正整数n 输出格式&#xff1a; 输出一个整数表示答案 输入输出样例 输入样例#1&#xff1a; 复制 2 输出样例#1&#xff1a; 复…

bind merge r 和join_[R] 制作梅西和C罗进球数的quot;追赶动画quot; - ggplot2 + gifski

效果如下&#xff1a;数据可视化 - 梅西 vs C罗https://www.zhihu.com/video/1084910827596804096数据可视化 - 8大射手进球趋势https://www.zhihu.com/video/1084910854461321216制作过程分为3个步骤:处理数据ggplot2创建图像帧save_gif逐帧打包生成gif文件使用的packages:lib…

【CodeForces-1041C】Coffee Break(贪心,STL,set二分维护,题意难,有坑,SJ题,构造)(知识点总结)

题干&#xff1a; Recently Monocarp got a job. His working day lasts exactly mm minutes. During work, Monocarp wants to drink coffee at certain moments: there are nn minutes a1,a2,…,ana1,a2,…,an, when he is able and willing to take a coffee break (for th…

盐务街属于一环吗_郑州步入“五环”时代,最早的“一环”原来是这里

近日&#xff0c;郑州“五环路”建设最新进展受到广泛关注。当郑州步入“五环”时代时&#xff0c;你是否想过郑州的最早的“一环”在哪里?来跟随记者的讲解&#xff0c;来一场时空逆行穿梭之旅&#xff0c;从历史深处寻找郑州最早的“一环”。△郑州五环示意图◆郑州现代“一…

C++ 输入输出加速挂(ACM竞赛常用)

好多种版本&#xff0c;今天给出其中之一&#xff0c;也是比较快的一种。 int read() {char ch getchar();int num 0;bool fl 0;for(; !isdigit(ch); ch getchar())if (ch-) fl 1;for(; isdigit(ch); ch getchar())num (num<<1)(num<<3)ch-48;if(fl) num …

oracle中那个日期怎么相减_oracle数据库中日期加减函数

1.oracle中当前系统时间加减用法select add_months(sysdate, 12) "NEW YEAR" from dual; /**系统时间12个月后的时间**/select extract(month from sysdate) "This Month" from dual; /**获取系统时间所在月份**/select (sysdate 1) "NEW DATE"…

【CodeForces - 1041D】Glider (枚举起点,双指针 或 二分终点,思维)(知识点总结)

题干&#xff1a; A plane is flying at a constant height of hh meters above the ground surface. Lets consider that it is flying from the point (−109,h)(−109,h) to the point (109,h)(109,h) parallel with OxOx axis. A glider is inside the plane, ready to s…

duilib vs2015 安装_FFmpeg视频播放器开发-FFmpeg简介与项目环境搭建(一)

前言&#xff1a;视频开发库有很多&#xff0c;例如微软的DirectShow&#xff1b;开源库OpenCV&#xff0c;当然OpenCV主要是图像处理&#xff0c;视频部分还是用的ffmpeg, 而且无法解码音频&#xff1b;SDL&#xff1b;大华和海康都有自己的库等等。音视频属于流媒体领域&…

【洛谷 - U43391】不是0-1背包的暴力AC(思维,二分,可转化为二元组问题,复习暴力dfs总结)

题干&#xff1a; https://www.luogu.org/problemnew/show/U43391 自01背包问世之后&#xff0c;小A对此深感兴趣。一天&#xff0c;小A去远游&#xff0c;却发现他的背包不同于01背包。 小A的背包最多能装W的价值 现有n件物品&#xff0c;分别为v1,v2,v3……vn 问如何存放物…

windowsthinpc虚拟内存_windows thin pc如何开启windows功能

没有“\DS\”目录 (子目录)没有“\Packages\”目录(子目录)没有“\FeaturePack\”目录(子目录)没有“\LangPacks\"目录(子目录)未找到“winemb-premiumcodecs-dolby-ac3-audioencoder.cab”未找到“WinEmb-PremiumCodecs-MPEG2andDolbyDecoder.cab”未找到“WinEmb-Premiu…

【牛客 - 185F】 假的数学游戏(斯特林公式,大数Java打表)

题干&#xff1a; 输入描述: 第一行&#xff1a;一个整数X 输出描述: 第一行&#xff1a;一个整数N 示例1 输入 复制 7 输出 复制 10 备注: 每个测试点所对应的X满足&#xff1a;第i个测试点输入的值为第i-1个测试点输入的值乘以10再加上7。特别的&#xff0c;第一个…

js怎么调用wasm_对于WebAssembly编译出来的.wasm文件js如何调用

WebAssembly也叫浏览器字节码技术 这里就不过多的解释了网上很多介绍主要是让大家知道在js里面如何调用执行它&#xff0c;我之前看WebAssemblyAPI时候反正是看得一脸懵逼也是为了大家能更快的入手这个比较新的技术吧这边写的一个dom是官方推荐的c/c编译的c代码1 int add (int …

*【HDU - 6333】Problem B. Harvest of Apples (莫队,逆元,组合数学)(这样预处理正确吗?)

题干&#xff1a; There are nn apples on a tree, numbered from 11 to nn. Count the number of ways to pick at most mm apples. Input The first line of the input contains an integer TT (1≤T≤105)(1≤T≤105) denoting the number of test cases. Each test c…