2011年11月25日
摘要: UVA_10651 由于总状态很少,所以直接广搜即可。#include<stdio.h>#include<string.h>#define MAXD 10010char b[20];int d[MAXD], q[MAXD], hash[MAXD], N;void init(){ int i, j; scanf("%s", b); N = q[0] = 0; for(i = 0; i < 12; i ++) { q[0] = (q[0] << 1) + (b[i] == 'o' ? (N ++, 1) : 0); }} 阅读全文
posted @ 2011-11-25 23:45 Staginner 阅读(253) 评论(0) 推荐(0) 编辑
摘要: UVA_10051 将一个立方体拆成6个,然后去求最长上升子序列即可。#include<stdio.h>#include<string.h>#define MAXD 3010char b[][10] = {"front", "back", "left", "right", "top", "bottom"};int N, w[MAXD], f[MAXD], upcol[MAXD], downcol[MAXD], d[MAXD], p[MAXD], a[1 阅读全文
posted @ 2011-11-25 21:06 Staginner 阅读(356) 评论(0) 推荐(0) 编辑