上一页 1 ··· 103 104 105 106 107 108 109 110 111 ··· 119 下一页
摘要: #include#include#define maxn 100005int dp[maxn],a[maxn],w[maxn];int main(){ int i,j,num,sum,t,cnt(1); while(~scanf("%d%d%d%d%d%d%d%d%d%d",&a[0],... 阅读全文
posted @ 2012-05-30 14:30 加拿大小哥哥 阅读(191) 评论(0) 推荐(0)
摘要: //前92位斐数,这是long long的存储范围#include/*迭代法*/void fun(int n){ int i; long long a1=a2=1,a3; for(i=1;ilong long a[94];int flag=-1;/*标志递归*/void fun(){ int i; ... 阅读全文
posted @ 2012-05-30 12:54 加拿大小哥哥 阅读(243) 评论(0) 推荐(0)
摘要: 小光棍数时间限制:1000 ms | 内存限制:65535 KB难度:1描述最近Topcoder的XD遇到了一个难题,倘若一个数的三次方的后三位是111,他把这样的数称为小光棍数。他已经知道了第一个小光棍数是471,471的三次方是104487111,现在他想知道第m(m<=10000000000)个小光棍数是多少?输入有多组测试数据。第一行一个整数n,表示有n组测试数据。接下来的每行有一个整数m。输出输出第m个小光棍数。样例输入11样例输出471#include<stdio.h>int main(){ int T; long long num; scanf("%d 阅读全文
posted @ 2012-05-30 12:10 加拿大小哥哥 阅读(254) 评论(0) 推荐(0)
摘要: 无线网络覆盖时间限制:3000 ms | 内存限制:65535 KB难度:3描述我们的乐乐同学对于网络可算得上是情有独钟,他有一个计划,那就是用无线网覆盖郑州大学。现在学校给了他一个机会,因此他要购买很多的无线路由。现在他正在部署某条大道的网络,而学校只允许把他的无线路由器放在路的正中间。我们默认这条大道是笔直的并且它在任何地方的宽度都一样。并且所有的路由器的覆盖面积是相同的。现在乐乐计算出这条大道的长和宽,以及路由器的覆盖半径,想请你帮忙,帮他计算出他最少要购买的路由器的数量。注意:为了防止某种干扰,两台无线路由之间的最小距离不能小于1米图1中为一条矩形的道路,中间的虚线代表中线。图2为最小 阅读全文
posted @ 2012-05-29 22:49 加拿大小哥哥 阅读(309) 评论(0) 推荐(1)
摘要: 有的题目要求“恰好装满背包”时的最优解,有的题目则并没有要求必须把背包装满。一种区别这两种问法的实现方法是在初始化的时候有所不同。 如果是第一种问法,要求恰好装满背包,那么在初始化时除了f[0]为0其它f[1..V]均设为-∞,这样就可以保证最终得到的f[N]是一种恰好装满背包的最优解。 如果并没有... 阅读全文
posted @ 2012-05-28 22:47 加拿大小哥哥 阅读(362) 评论(0) 推荐(0)
摘要: #include<stdio.h>#include<stdlib.h>int c[4];void fun(int num,int c[]){ int i=0; while(num>0)/*不能有等号,否则死循环*/ { c[i++]=num%10; num/=10; }}int cmp(const void *a,const void *b){ return *(int *)a-*(int *)b;}int main(){ int T,num,a,b,count,ans;int i; scanf("%d",&T); while(T--) 阅读全文
posted @ 2012-05-28 13:41 加拿大小哥哥 阅读(316) 评论(0) 推荐(0)
摘要: 小猴子下落时间限制:3000 ms | 内存限制:65535 KB难度:3描述有一颗二叉树,最大深度为D,且所有叶子的深度都相同。所有结点从左到右从上到下的编号为1,2,3,·····,2的D次方减1。在结点1处放一个小猴子,它会往下跑。每个内结点上都有一个开关,初始全部关闭,当每次有小猴子跑到一个开关上时,它的状态都会改变,当到达一个内结点时,如果开关关闭,小猴子往左走,否则往右走,直到走到叶子结点。一些小猴子从结点1处开始往下跑,最后一个小猴儿会跑到哪里呢?输入输入二叉树叶子的深度D,和小猴子数目I,假设I不超过整棵树的叶子个数,D< 阅读全文
posted @ 2012-05-28 12:37 加拿大小哥哥 阅读(253) 评论(0) 推荐(0)
摘要: #include<stdio.h>#include<math.h>main(){ int T;float a,b,c; scanf("%d",&T); while(T--) { scanf("%f%f%f",&a,&b,&c); printf("%s\n",fabs(a+b-c)<=0.00001?"Yes":"No"); }}如何判读浮点数相等是关键 阅读全文
posted @ 2012-05-27 21:06 加拿大小哥哥 阅读(178) 评论(0) 推荐(0)
摘要: 士兵杀敌(二)时间限制:1000 ms | 内存限制:65535 KB难度:5描述南将军手下有N个士兵,分别编号1到N,这些士兵的杀敌数都是已知的。小工是南将军手下的军师,南将军经常想知道第m号到第n号士兵的总杀敌数,请你帮助小工来回答南将军吧。南将军的某次询问之后士兵i可能又杀敌q人,之后南将军再询问的时候,需要考虑到新增的杀敌数。输入只有一组测试数据第一行是两个整数N,M,其中N表示士兵的个数(1<N<1000000),M表示指令的条数。(1<M<100000)随后的一行是N个整数,ai表示第i号士兵杀敌数目。(0<=ai<=100)随后的M行每行是一条 阅读全文
posted @ 2012-05-26 21:57 加拿大小哥哥 阅读(419) 评论(0) 推荐(1)
摘要: 士兵杀敌(一)时间限制:1000 ms | 内存限制:65535 KB难度:3描述南将军手下有N个士兵,分别编号1到N,这些士兵的杀敌数都是已知的。小工是南将军手下的军师,南将军现在想知道第m号到第n号士兵的总杀敌数,请你帮助小工来回答南将军吧。注意,南将军可能会问很多次问题。输入只有一组测试数据第一行是两个整数N,M,其中N表示士兵的个数(1<N<1000000),M表示南将军询问的次数(1<M<100000)随后的一行是N个整数,ai表示第i号士兵杀敌数目。(0<=ai<=100)随后的M行每行有两个整数m,n,表示南将军想知道第m号到第n号士兵的总杀敌 阅读全文
posted @ 2012-05-26 17:46 加拿大小哥哥 阅读(359) 评论(0) 推荐(0)
上一页 1 ··· 103 104 105 106 107 108 109 110 111 ··· 119 下一页