摘要: 题目链接大一上的时候一次比赛的一个题,那个时候水平真是菜啊,拖到今天,用个函数水过了,纪念马上要结束的大一。。。#include <stdio.h>#include <string.h>#define N 200001char p[N],o[N];int main(){ int i,len; while(scanf("%s%s",p,o)!=EOF) { len = strlen(p); for(i = len;i <= 2*len-1;i ++) { p[i] = p[i-len]; } ... 阅读全文
posted @ 2012-06-23 21:38 Naix_x 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 题目链接自己的代码能力太弱了啊,这个题有应该有两个方法,一个是直接判将所能走的点,是否存在被杀的可能,另一个就是先将红方可以 控制的点都找出来,然后再判断。去年福州赛区的被板刷的题,我做了2-3天,错了10+,POJ,HDU上都交,开始的思路还清晰,后来瞎改的都不知道自己写的是什么了,今天那个有个群赛,我下了下决心,一定要BUG找出来,从网上找了代码,找数据,测了测也对啊,终于 在自己乱试的数据找到错误,一开始的思路是对的,只错了一点,结果越改,偏离的越多了,模拟题,一直是自己的短板,本来可以用2000B+解决的问题,我却写了6000B+,查错都非常困难。。。 在WA了后,一定要慎重修改,慎重 阅读全文
posted @ 2012-06-23 20:43 Naix_x 阅读(284) 评论(0) 推荐(0) 编辑
摘要: 题目链接头一次做贪心这么给力。。。1Y,题意就是给俩字符串,如何把前一个变成后一个,4种操作,输出最短,且按 a d m c的优先级输出,分情况讨论下OK了。PS:本来以为是二维DP,一看1W,我慌乱了。。。 1 #include <stdio.h> 2 #include <string.h> 3 char p1[10001],p2[10001]; 4 int main() 5 { 6 int i,j,len1,len2; 7 while(scanf("%s%s",p1,p2)!=EOF) 8 { 9 len1 = strlen(p1);10 ... 阅读全文
posted @ 2012-06-23 16:49 Naix_x 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 题目链接和经典那个报数博弈差不多,在仔细的纸上写写前面的几种情况后,猜想出规律,1Y。PS:思考时间不算长,也不算短,中规中矩。0 - p - p+q - 2p +q - 2(p+q)..... 败 胜 败 胜 1 #include <stdio.h> 2 int main() 3 { 4 int n,p,q; 5 while(scanf("%d%d%d",&n,&p,&q)!=EOF) 6 { 7 if(n%(q+p)<= p &&n%(q+p) > 0) 8 printf("LOST\n" 阅读全文
posted @ 2012-06-23 12:38 Naix_x 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 题目链接这个题交了18次。。。做欧拉图的时候想起这个题,我在判是否是具有相同的根的时候判错了。。。这个题的注意方向就 连通(具有相同的根),并且不能存在合并的时候具有相同根的,这样意味着,就两条路了,然后再注意0 0的时候特殊数据(看DISCUSS)。 1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <string.h> 4 #define N 100010 5 int p[N+1],z,o[N+1]; 6 int find(int x) 7 { 8 int r = x,t; 9 while(p[x 阅读全文
posted @ 2012-06-23 11:04 Naix_x 阅读(194) 评论(0) 推荐(0) 编辑
摘要: 题目链接根据欧拉提出的定理,存在欧拉路的充要条件是连通,不存在奇数度数节点或者2个奇数节点。存在欧拉回路是连通,不存在奇数度数节点。并查集写的有点暴力,水过。还好1Y。 1 #include <stdio.h> 2 #include <string.h> 3 int o[1001],p[1001]; 4 int find(int x) 5 { 6 while (x != p[x]) 7 x = p[x]; 8 return x; 9 }10 void merge(int x,int y)11 {12 x = find(x);13 y = find(y)... 阅读全文
posted @ 2012-06-23 10:52 Naix_x 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 题目链接此题和UVA上一模一样,可是数据不一样,都很变态,UVA上是一定有小数点,而杭电上不一定,UVA上在结果为0时,输出“.”而杭电上输出0。注意这个就能AC。UVA上AC代码这里。 1 #include<stdio.h> 2 #include<string.h> 3 int k1[201],k2[201],o1[10]; 4 int main() 5 { 6 int a,b,c,i,j,num,e,d; 7 char p[10]; 8 while(scanf("%s%d",p,&num)!=EOF) 9 { 10 mem... 阅读全文
posted @ 2012-06-23 09:12 Naix_x 阅读(213) 评论(0) 推荐(0) 编辑