题目要求

良乡足球场有着优质的草坪,为了进一步美化草坪,学校体育部计划使用割草机对草坪进行修剪,进而得到多种多样的图案。由于割草机只能横向或竖向割草,且每次割草都会预先设定高度,割完后会把比设定高度高的草都割成设定的高度。

假设足球场中有一个 n * m 的草坪 (1<=n, m<=100),草坪中的草初始高度均为100。现给出一个图案,请通过编程判断割草机是否可以割出想要的图案。

输入

第一行包含两个整数 n 和 m。

接下来为 n 行输入,每行包含 m 个不大于100的正整数。

输出

如果可以修剪成输入的图案,则输出“YES”,否则输出“NO”。

第一种方案:

每次新建一个全为100的数组num2,每次找到输入数组num的行列最大,然后让num2数组按行列最大锄草,最后判断锄草后的数组num2是否和要求数组num相同

代码如下:

#include #define N 100
int main(int argc, const char * argv[]) {int m,n,i,j,num[N][N];while(scanf("%d%d",&n,&m)!=EOF){ int maxC[N],maxR[N],num2[N][N];memset(maxC,0,sizeof(maxC));memset(maxR,0,sizeof(maxR));int flag = 1;for (i = 0; i < n; i ++) {for (j = 0; j < m; j++) {scanf("%d",&num[i][j]);if (num[i][j] > 100) {flag = 0;}num2[i][j] = 100;//找到列最大maxC[j] = maxC[j] > num[i][j]?maxC[j]:num[i][j];//找到行最大maxR[i] = maxR[i] > num[i][j]?maxR[i]:num[i][j];}}for (i = 0; i < n; i++) {for (j = 0;j < m; j++) {//列(行)锄草,高于列(行)最大的变为列(行)最大,低于的不变num2[i][j] = num2[i][j] > maxC[j]?maxC[j]:num2[i][j];num2[i][j] = num2[i][j] > maxR[i]?maxR[i]:num2[i][j];}}//判断锄草后的草是否和要求的草相等for (i = 0; i < n; i++) {for (j = 0;j < m; j++) {if(num[i][j] != num2[i][j]){flag = 0;}}}if (flag == 1) {printf("YES\n");}else{printf("NO\n");}}return 0;
}

第二种方案:

每次找到输入数组num的行列最大,直接判断数组里的每一个数是否是该行最大和该列最大的最小值。(可以证明每个数不是是该行最大就是该列最大,且为这两个最大的较小那个值)

C语言 良乡足球场 割草机问题相关推荐

  1. 留良乡投资理财只需做到这五点

    投资理财是人们生活中不可或缺的一部分,随着目前人们生活水平的提高,手里闲置资金也逐渐增多,以及投资理财观念的转变,市场上滋生了各种各样的理财产品,让人眼花缭乱.进行投资理财是好事,但在理财时切不可盲目 ...

  2. 留良乡投资理财要合理配置资产

    理财是一个需求不断总结反思,但是学习行进的进程,理财中的这些知识点期望你都了解. 1.合理配备稳健出资 现在的理财产品非常多,一般来说我们以为股票.期货.外汇出资为高风险出资.银行定存.房子租金.保险 ...

  3. 留良乡七个投资理财妙招助你养老金翻番

    1.储蓄 存款,是深受一般居民家庭欢迎的出资行为,也是人们最常运用的一种出资办法,无风险,但相对出资酬谢不算高. 2.黄金 黄金作为避险资产,一贯广受喜欢,不少人以为在传统的股票及债券资产以外有必要具 ...

  4. 留良乡稳健投资理财的四大原则

    一.杰出的获利才干 关于稳健型出资者来说,理财产品的获利才干应该是他们最早考虑的问题.所以,在很多理财方法中,应挑选获利才干较高的理财产品,这样的话,能添加出资者成功的概率. 二.勿忘危险 危险与获利 ...

  5. 留良乡工薪家庭理财规划

    工薪家庭怎样拟定合理的理财规划?不少工薪家庭都会困惑每年理财产品收益和理财方法的挑选,每到年头都会比较紊乱该怎样进行新一年的财政整理,为了咱们更好的把握理财思路下面一同看看工薪家庭该怎样拟定理财规划最 ...

  6. 北理计算机研究生在良乡校区吗,食在良乡——说说我在北理工的这几年

    原标题:食在良乡--说说我在北理工的这几年 关注 本文由家长帮用户@琅琊为刃原创发布于家长帮论坛,原po为北理工本科毕业生,现在北理读研. 奔向食堂是一场竞赛,而下课铃声响起时再起跑,则为时已晚. 1 ...

  7. 留良乡投资理财知识怎么入门

    合理的理财,不应该仅仅攒钱,还要学会出资,要让钱生钱,生钱是理财的要点.不过,新手们在出资理财前,应该了解一些相关的常识,懂得出资理财常识入门.那么,要想自学出资理财常识,该怎么学习呢?今日,就一起来 ...

  8. 留良乡理财如何做好现金管理

    许多人的理财启蒙都是从某宝开端的,这确实是个好的开端,首要要有理财认识. 办理财政的榜首步,是现金办理.把钱取出来理财,必定要弄清楚钱的性质和用处,这样才干有相应的出资方针,才好便利去挑选相应的产品以 ...

  9. 林晓炜 网站交易系统 c语言,2011级C语言程序设计期末考试安排-发布.doc

    2011级C语言程序设计期末考试安排-发布 2011级C语言程序设计期末考试安排说明 一.考试时间: 考试时间分散在第17周进行,请注意自己的考试时间.每场考试时间长短不一,请留意本说明的详细时间. ...

最新文章

  1. js002-在HTML中使用JavaScript
  2. 内存分段分页机制理解_深度干货 | 真棒! 20 张图揭开内存管理的迷雾,瞬间豁然开朗...
  3. python 列表生成式_python 列表生成式 List Comprehensions
  4. jtemplates插件
  5. 001----Mysql隔离级别
  6. win7玩游戏窄屏变宽频的方法
  7. 元胞自动机在交通系统中的应用之二【单车道NaSch元胞自动机模型】
  8. 禅与维修摩托车的艺术_罗伯特-M-波西格
  9. node.js windows解压版安装与配置
  10. c语言计算定积分有几种方法,C语言用6种方法求定积分.doc
  11. java毕业设计毕业论文答辩管理系统Mybatis+系统+数据库+调试部署
  12. 原创壁纸小程序独立后台(1.3.5版本介绍)
  13. 毕业去哪儿?看这里!神策数据 2023 校园招聘启动啦
  14. C语言disp的头文件,TM1638.h 单片机C语言头文件
  15. 解决迅雷下载外网文件速度为0
  16. 存在即合理-开发语言
  17. Ubuntu 安装 vim
  18. 潮水退去 你还是那个让HR离不开的猎头吗
  19. 2021-12-02 迈向程序猿的第四十一步
  20. linux运维面试题3

热门文章

  1. DzzOffice开源办公系统源码 在线文档 网盘系统
  2. 蓝桥杯_note_2016
  3. 机器学习将会改变所有产业?未来之城将是人工智能的天下!
  4. 生物信息学期刊与会议
  5. 计算机毕业设计SSM宠物管理系统【附源码数据库】
  6. oracle中没有ctxsys用户,Oracle自带全文索引
  7. php 弹出cmd窗口,运行绿化.bat会一直跳出弹出CMD窗口
  8. cocoscreator Cmake 编译
  9. java组长竞选_竞选小组长的竞选稿
  10. 黑帽python第二版(Black Hat Python 2nd Edition)读书笔记 之 第八章 Windows常见特洛伊木马任务(4)沙箱检测