随笔分类 -  acm--pku

上一页 1 2
pku1036Gangsters 强盗进旅馆(动态规划)
摘要:- 第一种解法: dp[i][j]表示在i时间j状态下的最优解,递推公式如下: dp[0][0]=0 dp[0][s]=-inf 1=Code #include #include #include #define max(a,b,c) ((a>b?a:b)>c?(a>b?a:b):c) int dp[30002][102]; struct node{ int tn; int p; int s... 阅读全文
posted @ 2008-11-26 20:28 pandy 阅读(585) 评论(0) 推荐(0)
pku1015Jury Compromise 动态规划
摘要:题目大意: 在遥远的国家佛罗布尼亚,嫌犯是否有罪,须由陪审团决定。陪审团是由法官从公众中挑选的。先随机挑选n个人作为陪审团的候选人,然后再从这n个人中选m人组成陪审团。选m人的办法是:控方和辩方会根据对候选人的喜欢程度,给所有候选人打分,分值从0到20。为了公平起见,法官选出陪审团的原则是:选出的m个人,必须满足辩方总分和控方总分的差的绝对值最小。如果有多种选择方案的辩方总分和控方总分的之差的绝对... 阅读全文
posted @ 2008-11-26 08:58 pandy 阅读(849) 评论(0) 推荐(0)
pku动态规划题目列表
摘要:来源:网上某个朋友 文章源地址:http://www.cppblog.com/Felicia/archive/2007/08/26/30848.aspx 1015 Jury Compromise 1029 False coin 1036 Gangsters 1037 A decorative fence 1038 Bugs Integrated, Inc. 1042 Gone Fishing 10... 阅读全文
posted @ 2008-11-26 08:36 pandy 阅读(2068) 评论(0) 推荐(0)
pku3475--Paper-, er, Transcript-Folding Game简单模拟题
摘要:简单模拟题, 输入时先排一个序就好了 Code Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->#include void process(double a,double b,double c,double d) { int result... 阅读全文
posted @ 2008-11-22 21:36 pandy 阅读(202) 评论(0) 推荐(0)
pku3508--Hide That Number一道加密算法题
摘要:又一道简单题wrong了n次 简单来说就是s[i]-s[i+1];从后往前处理 错误原因:忘了考虑只有一位的情况(len=1)。。。。。。。 代码如下: Code Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->#include #include ... 阅读全文
posted @ 2008-11-22 20:35 pandy 阅读(318) 评论(0) 推荐(0)
pku2033--Alphacode(zjgsu1216) 递推
摘要:用递推, 对当前考虑的第i位进行考虑,表达成i-1或i-2的关系式 今天做这两道题目花了很多时间,不想写了,代码核心部分看看很容易懂的 代码如下: pku2033 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->#include #include ... 阅读全文
posted @ 2008-11-22 19:35 pandy 阅读(282) 评论(0) 推荐(0)
pku2229--sumsets(zjgsu,分花)
摘要:两种情况 1.n为奇数,则一定有一个1,所以a[n]=a[n-1] 2.n为偶数,如果加数里含1,则一定至少有两个------>a[n-2] 如果加数里没有1,则结果等于------------>a[n/2] 所以a[n]=a[n-2]+a[n/2] 代码如下: Code Code highlighting produced by A... 阅读全文
posted @ 2008-11-22 18:31 pandy 阅读(479) 评论(0) 推荐(0)
pku2663Tri Tiling递推题
摘要:递推公式如下: T(2)=3 ; T(0)=1; T(2*k-1)=0 T(2*k)=3*T(2*k-2)+2*(T(2*k-4)+T(2*k-6)+..+T(2) +T(0)) 代码如下(两个效率都为312k,0ms): Code1 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.Code... 阅读全文
posted @ 2008-11-21 19:11 pandy 阅读(222) 评论(0) 推荐(0)
pku3486--Computers 动态规划
摘要:题目大意: 给定一个时间段n,电脑的价格c,以及电脑的维修费用m(y,z)(第y台电脑从y年用到第z年总的维修费用)。让你求出在期限n中使用电脑的最低费用。 思路: 分解为子问题:考虑最后的解必然是某个编号为j+1的电脑(0= 1#include 2int dp[1005],m[1005][1005]; 3int main() 4{ 5 int c,n,i,j; ... 阅读全文
posted @ 2008-11-21 17:21 pandy 阅读(236) 评论(0) 推荐(0)
pku3665--icow简单模拟题
摘要:模拟题目所给的歌的随机播放算法 代码如下: Code Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> 1 #include 2 int r[10002]; 3 int findnum(int n) 4 { 5 int i,max;... 阅读全文
posted @ 2008-11-21 08:51 pandy 阅读(291) 评论(0) 推荐(0)
pku1029--false coin
摘要:枚举法 代码如下: #include #include int left[102][502]; int right[102][502]; int a[102]; short r[1001]; char c[102]; int n,k,num; int result=0,index; int isgreat(int i) { int j,flag,m; for(j=0;j') { ... 阅读全文
posted @ 2008-11-12 08:35 pandy 阅读(792) 评论(1) 推荐(0)
pku2575--Jolly Jumpers
摘要:竟然错在地方, 害我花了这么多时间去找资料 后来调试了才知道错。。。wa了好多次 教训:再得到结果后未处理剩下的还没输完的数据(貌似以前也注意到过,这次一定要记住) 这可是简单题啊、、、、、、、、、、真想哭。。。。结果真不干脆。 休息,明天还要赶早去学车的。。 正确代码如下: #include #include #include bool bo[3002]; int main() { int ... 阅读全文
posted @ 2008-11-08 23:47 pandy 阅读(347) 评论(0) 推荐(0)
pku2593--Max Sequence
摘要:与杭电的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 阅读(204) 评论(0) 推荐(0)
pku2603--Brave balloonists
摘要:运用下面这个方法 若正整数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 阅读(288) 评论(0) 推荐(0)
pku2707--Copier Reduction
摘要:贡献了两个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 阅读(245) 评论(0) 推荐(0)
pku2940--Wine Trading in Gergovia
摘要:以前看这道题目的时候就觉得难, 还做的导致time limited。。 看了某人的方法以后,才知道怎么做, 数学好的人还真有优势。我要加油,加油 思想如下: 从第一户人家开始,不管其是供还是需x,都必须在第一户和第二户之间搬运x单元的酒, 此时合并这两户人家,假设其需或供y单元的酒, 则再与第三户人家比较时候,要搬运y单元的酒, 如此下去,直至第n户人家】 代码如下: #include #in... 阅读全文
posted @ 2008-11-08 21:24 pandy 阅读(332) 评论(0) 推荐(0)
pku3176--Cow Bowling
摘要:一道简单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 阅读(206) 评论(0) 推荐(0)
pku3219--二项式系数
摘要: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 阅读(387) 评论(0) 推荐(0)
pku3536--Beer Refrigerator
摘要:又一道错了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 阅读(276) 评论(0) 推荐(0)

上一页 1 2