机智
文章平均质量分 54
愤怒的北方酱
这个作者很懒,什么都没留下…
展开
-
hdu5335&15年杭电多校集训(4)i题(bfs+策略)
题目大意:有一个由0和1组成的矩阵(m*n)表示迷宫,入口是左上角,出口是右下角,记录你走过的点的数字(0或者1),最后将会得到一个二进制串,要求二进制串最小。解题思路:首先m+n-1步为最短路径,想想为什么,多走的话相当度二进制串要多一位,这一点可以用曼哈顿距离来理解,其次整个程序分成两段,一开始如果碰到0的话,bfs四个方向拓展,遇到1结束,统计x+y的最大值确定能走的最远距离(曼哈顿距离原创 2015-08-03 20:54:48 · 626 阅读 · 0 评论 -
hdu5301and15年多校集训1002题(builds)(dfs)
题目大意:给你矩形的长和宽,他被很多单位为1的小正方形组成,还有一个黑块给了它的坐标,代表窗户,把这个矩形分割,每个分割的块,挨着黑块,或者边沿才行解题思路:一种是根据图形来拼接而成,一种是dfs(q神的代码)注意:其实分割之后,只能是长条状的块(n*1),如果不是,则可以分割为长条状的块方法一:#include#include#include#includeusing n原创 2015-07-27 12:03:06 · 382 阅读 · 0 评论 -
hdu 4091 Zombie’s Treasure Chest
需要仔细体会s1和s2都很小的时候,其枚举量为什么是s1+s2#include#include#includeusing namespace std;int t,kase;int main(){ scanf("%d",&t); kase=1; while(t--) { long long n,s1,v1,s2,v原创 2015-05-28 16:23:14 · 366 阅读 · 1 评论 -
poj2309解题报告
水题,主要是找规律,不过需要注意的就是c的各种位运算符,这次还是第一次用到,其次就是我找到了最小结点,竟然纠结半天怎么找最大结点~~#include#include#includeusing namespace std;int main(){ int n,m; scanf("%d",&n); for(int i=0;原创 2015-05-12 17:02:24 · 429 阅读 · 0 评论 -
POJ1023解题报告
这道题对我的启发还是比较大,刚开始,就想着直接枚举它,然后果断TLE了~~看来得转变思维哎,这个世界上有一种代码叫别人的代码,有种思路叫别人的思路~~具体思路就是十进制奇偶性,和二进制的最后一位,有关,然后根据具体情况(奇偶,正负),对十进制数进行折半,得到倒数第二位的二进制。。。。。最后如果十进制数为0就可以了,不为0 impossib#include#include#i原创 2015-05-28 09:57:23 · 615 阅读 · 0 评论