摘要:
竟然错在地方, 害我花了这么多时间去找资料 后来调试了才知道错。。。wa了好多次 教训:再得到结果后未处理剩下的还没输完的数据(貌似以前也注意到过,这次一定要记住) 这可是简单题啊、、、、、、、、、、真想哭。。。。结果真不干脆。 休息,明天还要赶早去学车的。。 正确代码如下: #include #include #include bool bo[3002]; int main() { int ...
阅读全文
posted @ 2008-11-08 23:47
pandy
阅读(336)
推荐(0)
编辑
摘要:
与杭电的max sum plus plus相同。 我用那个代码,把m改成2上交就ac了(两个字段) 代码如下: #include #include int maxsum(int e[], int n, int m) { int *curr_best; int *prev_best; int max_sum, i, j; curr_be...
阅读全文
posted @ 2008-11-08 23:02
pandy
阅读(200)
推荐(0)
编辑
摘要:
运用下面这个方法 若正整数n可分解为p1^a1*p1^a2*…*pk^ak 其中pi为两两不同的素数,ai为对应指数 n的约数个数为(1+a1)*(1+a2)*….*(1+ak) 要好好学数学了。 统计各个素数的个数(存放在数组里),然后相乘并可得到个数 代码如下: #include #include #include int main() { int x,i,n=10;int a[100...
阅读全文
posted @ 2008-11-08 22:48
pandy
阅读(283)
推荐(0)
编辑
摘要:
贡献了两个compile erroe 代码如下: #include int main() { int a,b,c,d,t; double e,f; while(scanf("%d %d %d %d",&a,&b,&c,&d),a||b||c||d) { if(a1&&f>1) printf("100%%\n"); else printf("%d%%\n",(int)(...
阅读全文
posted @ 2008-11-08 22:09
pandy
阅读(233)
推荐(0)
编辑
摘要:
以前看这道题目的时候就觉得难, 还做的导致time limited。。 看了某人的方法以后,才知道怎么做, 数学好的人还真有优势。我要加油,加油 思想如下: 从第一户人家开始,不管其是供还是需x,都必须在第一户和第二户之间搬运x单元的酒, 此时合并这两户人家,假设其需或供y单元的酒, 则再与第三户人家比较时候,要搬运y单元的酒, 如此下去,直至第n户人家】 代码如下: #include #in...
阅读全文
posted @ 2008-11-08 21:24
pandy
阅读(325)
推荐(0)
编辑
摘要:
一道简单dp题 代码如下: #include #define max(a,b) (a>b?a:b) int a[352][352]; int best[352]; int main() { int n,i,j; scanf("%d",&n); for(i=1;i0;i--) { for(j=1;j<=i;j++) best[j]=max(best[j],best[j+1])+a[...
阅读全文
posted @ 2008-11-08 20:56
pandy
阅读(199)
推荐(0)
编辑
摘要:
1.统计因子2的个数 借鉴一个数学方法:统计数为n的因子为i的个数(与下面所述等同) 计算1~n之间包含一个因子i的个数的简单算法就是: cnt = 0; while (n) { n /= i; cnt += n; } 代码如下: #include int main() { int a,b,c,m,n,k; while(scanf("%d %d",&n,&k)==2) { m=n-k...
阅读全文
posted @ 2008-11-08 19:30
pandy
阅读(367)
推荐(0)
编辑
摘要:
又一道错了n次 想得太简单 正确代码如下: #include #include int main() { int a,b,c=0,a1,b1,c1,v,min; int t; scanf("%d",&v); min=1000000000; t=(int)(pow(v,1.0/3))+1; for(a=t;a>=1;a--) { if(v%a==0) { for(b=...
阅读全文
posted @ 2008-11-08 14:22
pandy
阅读(268)
推荐(0)
编辑
摘要:
学习网上某位朋友的做法。 基本思想:b(i,j) = Max{ b(i, j-1) + e[j], Max{ b(i-1, t) } + e[j] } (i #include int maxsum(int e[], int n, int m) { int *curr_best; int *prev_best; int max_sum, i, j; ...
阅读全文
posted @ 2008-11-08 11:46
pandy
阅读(920)
推荐(0)
编辑