https://acm.zzuli.edu.cn/zzuliacm/problem.php?id=1430

1430: 多少个0

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 322  Solved: 82

SubmitStatusWeb Board

Description

一个n*n的方格,每个格子中间有一个数字是2或者5,现在从方格的左上角走到右下角,每次只能选择向下或者向右移动一格两种移动方式,让所有经过的格子中的数字相乘,求使最后的结果中末尾处0的数字最少。

Input

第一行是一个正整数n(0<n<100)。

接下来n行是一个n*n的矩阵。

Output

一个正整数m,表示最后的结果末尾处最少有m个0。

Sample Input

4
2 5 2 5
5 2 5 2
2 5 5 5
2 2 2 2

Sample Output

 
欸一开始都没看完题就开始bfs真是醉了,后来写了个dp一直WA,自己写的数据都能过,后来看题解说格子数固定的恍然大悟!
本来就是想两个dp出2,5的最大个数,但是苦于不知道如何计算一共走个几个格子无法下手,看完之后发现是啊,题目说了只能向下或者向右走,
从左上角到右下角的话必然横着走n个竖着走n个经过的格子就是(n*2-1)个,这样就好办了!

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
#define CIN(a) scanf("%d",&a)
#define COUT(a) printf("%d\n",a)
#define ql(a) memset(a,0,sizeof(a))
#define FOR(i,a,b) for(i=a;i<=b;++i)
int main()
{
int dp5[105][105],dp2[105][105],e[105][105];
int n,m,i,j,maxn;
while(CIN(n)!=EOF){ql(dp2),ql(dp5);
maxn=0;int k1,k2;
FOR(i,1,n)
   FOR(j,1,n) CIN(e[i][j]);
FOR(i,1,n)
    FOR(j,1,n){int c=0;
if(e[i][j]==2) ++c;
dp2[i][j]=max(dp2[i-1][j],dp2[i][j-1])+c;
}k1=min(dp2[n][n],n*2-1-dp2[n][n]);
FOR(i,1,n)
    FOR(j,1,n){int c=0;
if(e[i][j]==5) ++c;
dp5[i][j]=max(dp5[i-1][j],dp5[i][j-1])+c;
}k2=min(dp5[n][n],n*2-1-dp5[n][n]);
     COUT(min(k1,k2));
}
return 0;
}

zzuli 1430 多少个0的更多相关文章

  1. Java系统监控(淘汰sigar)

    Sigar是Hyperic-hq产品的基础包,是Hyperic HQ主要的数据收集组件.它用来从许多平台收集系统和处理信息. 这些平台包括:Linux, Windows, Solaris, AIX, ...

  2. 【原创】大叔问题定位分享(23)Ambari安装向导点击下一步卡住

    ambari安装第一步是输入集群name,点击next时页面卡住不动,如下图: 注意到其中一个接口请求结果异常,http://ambari.server:8080/api/v1/version_def ...

  3. 基于卷积神经网络CNN的电影推荐系统

    本项目使用文本卷积神经网络,并使用MovieLens数据集完成电影推荐的任务. 推荐系统在日常的网络应用中无处不在,比如网上购物.网上买书.新闻app.社交网络.音乐网站.电影网站等等等等,有人的地方 ...

  4. 微信小程序省市区选择器对接数据库

    前言,小程序本身是带有地区选着器的(网站:https://mp.weixin.qq.com/debug/wxadoc/dev/component/picker.html),由于自己开发的程序的数据是很 ...

  5. N天学习一个linux命令之netstat

    用途 打印网络连接,路由表,网卡信息,假连接,组播成员信息 用法 1 显示网络连接信息 netstat [address_family_options] [--tcp|-t] [--udp|-u] [ ...

  6. ZAM 3D 制作简单的3D字幕 流程(二)

    原地址:http://www.cnblogs.com/yk250/p/5663907.html 文中表述仅为本人理解,若有偏差和错误请指正! 接着 ZAM 3D 制作简单的3D字幕 流程(一) .本篇 ...

  7. ZAM 3D 制作3D动画字幕 用于Xaml导出

    原地址-> http://www.cnblogs.com/yk250/p/5662788.html 介绍:对经常使用Blend做动画的人来说,ZAM 3D 也很好上手,专业制作3D素材的XAML ...

  8. osg编译日志

    1>------ 已启动全部重新生成: 项目: ZERO_CHECK, 配置: Debug x64 ------1> Checking Build System1> CMake do ...

  9. hihoCoder 1430 : A Boring Problem(一琐繁题)

    hihoCoder #1430 : A Boring Problem(一琐繁题) 时间限制:1000ms 单点时限:1000ms 内存限制:256MB Description - 题目描述 As a ...

随机推荐

  1. nginx的权限问题(Permission denied)解决办法

    nginx的权限问题(Permission denied)解决办法 一个nginx带多个tomcat集群环境,老是报如下错误:failed (13: Permission denied) while ...

  2. MySQL数据库----事务

    事务 -- 事务用于将某些操作的多个SQL作为原子性操作,一旦有某一个出现错误,-- 即可回滚到原来的状态,从而保证数据库数据完整性.-- 事务也就是要么都成功,要么都不成功-- 事务就是由一堆sql ...

  3. Python之路----迭代器与生成器

    一.迭代器 L=[1,,2,3,4,5,] 取值:索引.循环for 循环for的取值:list列表 dic字典 str字符串 tuple元组 set f=open()句柄 range() enumer ...

  4. ES6学习--对象属性的可枚举性( enumerable)

    可枚举性(enumerable)用来控制所描述的属性,是否将被包括在for...in循环之中.具体来说,如果一个属性的enumerable为false,下面三个操作不会取到该属性.* for..in循 ...

  5. Confluence5.8更改数据库配置

    Confluence5.8更改数据库配置 第一步:是找到confluence的安装目录,我的安装目录在 /opt/atlassian/: 第二步:由于confluence把tomcat给改造了,所以c ...

  6. mysql hang and srv_error_monitor_thread using 100% cpu(已解决)

    昨天晚上,运维过来说有台生产服务器的mysql cpu一直100%,新的客户端登录不了,但是已经在运行的应用都正常可用. 登录服务器后,top -H看了下,其中一个线程的cpu 一直100%,其他的几 ...

  7. 解决mysql的Too many connections

    解决: /etc/my.cnf vim编辑 添加 max_connections= wait_timeout= 然后执行code service mysqld reload service mysql ...

  8. # 20145106 《Java程序设计》第6周学习总结

    教材学习内容总结 来源和目的都不知道的情况下还是可以撰写程序的,有这类需求的时候,可以设计一个通用的dump()方法.dump方法接受inputstream与outputstream实例,分别代表读取 ...

  9. [noip模拟题]排队

    [问题描述] 小sin所在的班有n名同学,正准备排成一列纵队,但他们不想按身高从矮到高排,那样太单调,太没个性.他们希望恰好有k对同学是高的在前,矮的在后,其余都是矮的在前,高的在后.如当n=5,k= ...

  10. 网络安全、Web安全、渗透测试之笔经面经总结(三)

    本篇文章涉及的知识点有如下几方面: 1.什么是WebShell? 2.什么是网络钓鱼? 3.你获取网络安全知识途径有哪些? 4.什么是CC攻击? 5.Web服务器被入侵后,怎样进行排查? 6.dll文 ...