上一页 1 ··· 28 29 30 31 32 33 34 35 36 ··· 39 下一页
  2013年8月26日
摘要: http://poj.org/problem?id=1426题意 : 输入一个数n,找n的倍数m,这个m所满足的条件是,每一位数只能由0或1组成,在题目的旁边用红色的注明了Special Judge,表示一开始不懂什么意思,后来问的kkk,原来就是,样例的答案真的是样例,只要你输出符合要求的就行,不一定非要输出样例中给的。思路 : 这个题分类其实是BFS,但在网上看了某大神博客之后瞬间用了DFS做出来了。。。#include#includeusing namespace std ;int mark ;void DFS(long long BB,int n ,int floor){ if(... 阅读全文
posted @ 2013-08-26 21:40 枫、 阅读(286) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=2251题意 : 就是迷宫升级版,从以前的一个矩阵也就是一层,变为现在的L层," . "是可以走,但是“#”不可以走,从S走到E,求最短的路径,若是找不到就输出“Trapped!”,每一层的同一个位置若都是" . "是可以直接走的,换句话说,map[1][j][k]与map[2][j][k]若都是" . ",是可以从map[1][j][k]走到map[2][j][k]的思路 : 求最短路径,用BFS ,这个题比较搞,分类在DFS里,但用DFS会超时啊,所以倒是欺骗了不少童鞋,这个题我 阅读全文
posted @ 2013-08-26 19:00 枫、 阅读(193) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=3126题意 : 给你两个四位数,都是素数,一个是初始素数x,一个是目标素数y,让你从x变成y,x每次只能改变1位数,来变成另外一个素数k,再改变k的一位数变成另另外一个素数,这样变下去,找到x变成y需要的最少的次数,如果无法实现,输出Impossible思路 : 每个数字共有4位数,每位数字有10种可能的改变值[0...9],但最高位不允许为0,所以可以将问题转化为图:初始素数和所有经一位数值改变得到的新素数为节点,若素数a经一位改变后变为素数b,则a连向b一条边长为1的有向边,所以若目标素数y在图中,则初始素数到目标素数的路径上的边数即为 阅读全文
posted @ 2013-08-26 15:12 枫、 阅读(189) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=1321题意 : 我能说这是迄今为止见到的POJ上第二道中文题吗,既然是中文也很好理解,就不详述了思路 : 典型的深搜DFS ;#include#include#includeusing namespace std ;const int maxn = 100 ;int vis[maxn] ;int ch[maxn][maxn] ;int cnt = 0 ,n,k ;int judge(int a,int b)//判断这个棋子的这一行和这一列是否还有别的可以放棋子的地方{ for(int i = 1 ; i >sh ; ... 阅读全文
posted @ 2013-08-26 10:11 枫、 阅读(402) 评论(1) 推荐(0) 编辑
  2013年8月24日
摘要: http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=1281题意 : 一个杯子,告诉你底面半径,顶端半径,杯子高度,里边装有的热水的量,让你求杯中水的高度思路 : 就是一个简单的数学公式问题,也没有什么要特别注意的地方,杯子有两种形状,圆柱和圆台,圆柱的话直接用体积除以底面积即可得,而圆台的话,就这么去求肯定是求不出来的,所以就要用间接法,就是先把圆台补全,补成一个大圆锥,通过求小圆锥的高h0 = H*r/(R-r),就可以求出多补的小圆锥的体积v0 = (pi*h0*r*r)/3,数学上,这个小 阅读全文
posted @ 2013-08-24 20:49 枫、 阅读(163) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=3250题意 :n个牛排成一列向右看,牛 i 能看到牛 j 的头顶,当且仅当牛 j 在牛 i 的右边并且牛 i 与牛 j 之间的所有牛均比牛 i 矮。 设牛 i 能看到的牛数为ni,求ni的和。思路 : 表示一开始就想用数组去操作,结果说是会超时,问了别人的才知道原来要用栈啊,用栈保存,新的元素若是比栈顶元素大,就把栈里小于新元素的弹出栈#include#include#include#includeusing namespace std ;int main(){ int n ; scanf("%d",&n) ; 阅读全文
posted @ 2013-08-24 15:26 枫、 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 完美数 Time Limit: 1000ms Memory limit: 65536K题目描述任何一个自然数的约数中都有1和它本身,我们把小于它本身的因数叫做这个自然数的真约数。如6的所有真约数是1、2、3,而且6=1+2+3。像这样,一个数所有真约数的和正好等于这个数,通常把这个数叫做完美数。古希腊人非常重视完美数。毕达哥拉斯发现它之后,人们就开始了对完美数的研究。现在要求输出所有在m和n范围内的完美数。输入输入数据有多组,每组占一行,包括两个整数m和n(1≤m≤n≤99999999)。输... 阅读全文
posted @ 2013-08-24 14:22 枫、 阅读(339) 评论(0) 推荐(0) 编辑
  2013年8月23日
摘要: http://poj.org/problem?id=2513题意 :一些木棒,两端都涂上颜色,求是否能将木棒首尾相接,连成一条直线,要求不同木棒相接的一边必须是相同颜色的。思路 : 这个题的话就比较麻烦,不过倒也好理解,有并查集,树来保存字符串集合,用图论知识来解决就可以了,这个题如果把木棒看成一条边,木棒一端具有相同颜色的看成同一个点,因此可以转化成一个图中判断能否一笔画,就是给你一个无向图,让你判断是否存在欧拉路。而无向图中存在欧拉路的的条件有两个,一个是图要是联通的,二是所有节点的度为偶数度,或者奇数度节点为偶数个,其实就是两个。至于欧拉图,欧拉路什么的我就不再赘述,看了一位大神的博客写 阅读全文
posted @ 2013-08-23 20:28 枫、 阅读(781) 评论(0) 推荐(0) 编辑
摘要: http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=1242这个是SDUTOJ1242http://acm.hdu.edu.cn/showproblem.php?pid=2015HDUOJ2015题目描述有一个长度为n(nint main(){ int i, n, m, b, mark; while (scanf("%d%d", &n, &m) != EOF) { b = 2; mark = 1; for (i = 0 ; i < n / m ;... 阅读全文
posted @ 2013-08-23 14:54 枫、 阅读(417) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=2002题意 : 就是给你很多点的坐标,任取四个,看能组成多少个不同的正方形,相同的四个点,不同顺序构成的正方形视为同一正方形。思路 : 就是一个简单的枚举,但是你要是四个点四个点的枚举因为数据量到1000,所以肯定会超时的,就两个点两个点枚举,再去判断另外两个点是否存在就可以了,百度了才知道有这样一个公式,知道两个点(x1,y1)(x2,y2)x3=x1+(y1-y2) y3= y1-(x1-x2)x4=x2+(y1-y2) y4= y2-(x1-x2)或x3=x1-(y1-y2) y3= y1+(x1-x2)x4=x2-(y1-y2) y 阅读全文
posted @ 2013-08-23 11:07 枫、 阅读(440) 评论(0) 推荐(0) 编辑
上一页 1 ··· 28 29 30 31 32 33 34 35 36 ··· 39 下一页