雕刻时光

just do it……nothing impossible
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2011年3月10日

摘要: http://mail.bashu.cn:8080/BSoiOnline/showproblem?problem_id=2111#top 阅读全文

posted @ 2011-03-10 22:29 huhuuu 阅读(157) 评论(0) 推荐(0) 编辑

摘要: 一开始看还以为状态100种,搜索深度10000层,明显要爆内存或时间看了nocow解释,每种状态里每六个灯循环,就可以将基础状态找出:(按钮4:当按下此按钮,将改变所有序号是3*K+1(K>=0)的灯。例如:1,4,7...)这里可以发现循环一共就8种bool map[8][6]={ {0,0,0,0,0,0}, {0,0,1,1,1,0}, {0,1,0,1,0,1}, {0,1,1,0,1,1}, {1,0,0,1,0,0}, {1,0,1,0,1,0}, {1,1,0,0,0,1}, {1,1,1,1,1,1}};bu[8]={1,2,1,1,2,1,2,0};//达到每种状态的步 阅读全文

posted @ 2011-03-10 22:08 huhuuu 阅读(436) 评论(0) 推荐(0) 编辑

摘要: View Code #include<stdio.h>char s[100009];bool hash[100009];int main(){ int a,b,i,j; int t; scanf("%d",&t); while(t--) { scanf("%d",&b); { if(b<0) { printf("-"); b=-b; } a=1; for(i=0;i<=b;i++) { hash[i]=0; } int add=1; int qian; qian=a/b; a=a%b; hash 阅读全文

posted @ 2011-03-10 15:29 huhuuu 阅读(260) 评论(0) 推荐(0) 编辑

摘要: View Code ABEDFCHGCBADEFGHif n<=0 return; int p=先序中的字母在中序中的位置。 Build(p,(char *)pre+1,(char *)mid); //递归构造左子树的遍历 Build(n-1-p,pre+p+1,mid+p+1); //递归构造右子树的遍历#include <stdio.h>#include <string.h>#define MAXN 1000char mid[MAXN],pre[MAXN],ans[MAXN];void Build(int n,char *pre,char *mid,char 阅读全文

posted @ 2011-03-10 14:25 huhuuu 阅读(214) 评论(0) 推荐(0) 编辑