|
2011年3月12日
摘要:
3个小时,A了两水题,一个因为没初始wa了6次都是自己平时马马虎虎平时就应该以比赛来看待,不要还没想清楚就提交……这段时间就锻炼正确率!!!一旦有错误,要自己独立思考,不要求助网络 阅读全文
摘要:
简单dfs搜索用全局变量max随时记录当时搜到的面积最大即可View Code #include<stdio.h>bool hash[109][109];int all,max;int n,m;int f[4][2]={0,-1,-1,0,0,1,1,0};void dfs(int x,int y){ int i,x1,y1; for(i=0;i<4;i++) { x1=x+f[i][0]; y1=y+f[i][1]; if(x1>=1&&x1<=n&&y1>=1&&y1<=m&&hash 阅读全文
2011年3月10日
摘要:
http://mail.bashu.cn:8080/BSoiOnline/showproblem?problem_id=2111#top 阅读全文
摘要:
一开始看还以为状态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};//达到每种状态的步 阅读全文
摘要:
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 阅读全文
摘要:
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 阅读全文
2011年3月9日
摘要:
注意是顺时针转!!!View Code #include<stdio.h>#define N 360bool a[5][N+N];int v[5];int main(){ int i,j; int n; while(scanf("%d",&v[0])!=EOF) { for(i=0;i<5;i++) { for(j=0;j<360;j++) { a[i][j]=0; } } int add=0; int fi,end; scanf("%d",&n); for(i=1;i<=n;i++) { scanf(&qu 阅读全文
2011年3月8日
摘要:
要知道,a[100]字符串的首地址与char *a 是不一样的,a[100]字符串的首地址不是指针,char *a就是指针!!!View Code //swap(char *a,char *b)#include<iostream>#include<string.h>using namespace std;void swap(char *a,char *b){ int al,bl,i; al=strlen(a)+1; bl=strlen(b)+1; if(al<bl)al=bl; int temp; for(i=0;i<al;i++) { temp=a[i]; 阅读全文
摘要:
主要用到公式(表示m个数里存在1的个数最多n的组合数)而这个公式的实现过程是递归,遇到n==0||m==0返回1后回归,有值时也返回值后回归思路就是,先看左边第1位(不存在1时)的组合数是否小于di,若小于则说明左边第1位存在1…^View Code #include<stdio.h>unsigned int dp[33][33];unsigned swap(int a,int b) { if(a==0||b==0)return 1; if(dp[a][b]!=0)return dp[a][b]; return dp[a][b]=swap(a-1,b-1)+swap(a,b-1); 阅读全文
2011年3月7日
摘要:
有时候一个人就会默默的沉默有时候不知道自己的方向有时候感觉就像在做梦有时候脑海里一直挥之不去你的脸有时候希望一切都没有发生有时候希望我就像晴天娃娃有时候希望你会回心转意有时候也希望你过得更好有时候有多么想见你有时候希望可以不再见到你———————— 阅读全文
|