X-man

导航

2013年8月17日 #

hdu 4681 String(转载)

摘要: #include #include #include #include using namespace std;#define maxn 1111char a[maxn],b[maxn],c[maxn];int dp1[maxn][maxn],dp2[maxn][maxn],n,m,len;struct node//记录在字符串a,b中,c串的首尾位置{ int x,y;};void lcs()//求最长公共子序列长{ int i, j,k; //从字符串左到右 for(i=0;i=0;i--) for(j=m-1;j>=0;j--) if(... 阅读全文

posted @ 2013-08-17 16:55 雨钝风轻 阅读(217) 评论(0) 推荐(0) 编辑

hdu 2147 kiki's game

摘要: #include#includeusing namespace std;bool map[2001][2001];//1 P 0 N;int main(){ int i,j,k; map[1][1]=1; for(i=2;iint main(){ int n,m; while(scanf("%d%d",&n,&m)!=EOF) { if(n==0&&m==0)break; if(n&1 && m&1)printf("What a pity!\n"); else printf("Wo 阅读全文

posted @ 2013-08-17 16:25 雨钝风轻 阅读(171) 评论(0) 推荐(0) 编辑

hdu 4678 Mine

摘要: HDU 4678 把点开空地时会打开的一大片区域看成一块,题目中说到,在一盘游戏中,一个格子不可能被翻开两次,说明任意两块空地不会包含相同的格子。那么就可以看成一个组合游戏。当空地旁边没连任何数字的时候,sg = 1(直接转移到 0)。如果有一个数字,点空地可以转移到 0,点数字可以转移到 1,所以 sg = 2。有 2 个数字点空地转移到 0,点数字转移到 2,所以 sg = 1。以此类推,空地旁边有奇数个数字的时候,sg = 2,否则 sg = 1。剩下的没与空地相连的数字,每个的 sg 都是 1。那么将所有空地的 sg 异或起来,再异或 (不与空地相连的数字个数对 2取模),等于零输.. 阅读全文

posted @ 2013-08-17 14:38 雨钝风轻 阅读(267) 评论(0) 推荐(0) 编辑