- 博客(25)
- 资源 (4)
- 收藏
- 关注
转载 hdu 1425.sort
#include using namespace std; bool num[1000001]; int main() { int n,m,i,j,a; while(scanf("%d %d",&n,&m)!=EOF){ for(i=0;i scanf("%d",&a);
2012-07-28 15:22:36 443
转载 hdu 1047.Integer Inquiry
#include #include using namespace std;int main(){ int n,i,a,l; char s[101]; while(cin>>n) while(n--) { int sum[105]={0},m=0; whil
2012-07-27 10:44:51 499
转载 有关N!
阶乘递归代码:(教材) C++代码 #include int f(int n); void main() { printf("%d\n",f(5)); } int f(int n) { if(n==0)return 1; return n*f(n-1); } ========
2012-07-27 09:34:17 928
转载 hdu 1042.N!
#include #include void fact(int n){ int result[7200]={1}; int i,j,maxbit=1; int carry=0; for(i=1;i { for(j=0;j result[j]*=i; for(j=0;j
2012-07-26 19:22:19 896
原创 hdu 1004.Let the Balloon Rise
#include #include #include #include using namespace std;map color;int main(){ int n,max; string str; map::iterator iter; while(cin>>n&&n) { color.cl
2012-07-26 15:22:58 348
原创 hdu 1003.Max Sum
#include #include #include int a[100001];int main(){ int t,cases=1; scanf("%d",&t); while(t--) { printf("Case %d:\n",cases++); memset(a,0,sizeof(a))
2012-07-26 14:37:59 352
原创 hdu 1002.A + B Problem II
#include #include #include int c[2002];int main(){ int t,count=0; char a[1001],b[1001]; scanf("%d",&t); while(t--) { count++; memset(a,0,sizeof
2012-07-26 13:24:44 1215
转载 后缀数组
#include #include #define maxn 110 char c[maxn]; int s[maxn],sa[maxn]; int wa[maxn],wb[maxn],wv[maxn],ws[maxn];//辅助数组,意义不明 int cmp(int *s,int a,int b,int l){return s[a]==s[b]&&s[a+l]
2012-07-23 14:37:10 488
转载 最长重复不重叠字串
把排序后的后缀分成若干组,其中每组的后缀之间的height 值都不小于k。例如,字符串为“aabaaaab”,当k=2 时,后缀分成了4 组,如图5所示。。然后对于每组后缀,只须判断每个后缀的sa 值的最大值和最小值之差是否不小于k。如果有一组满足,则说明存在,否则不存在。整个做法的时间复杂度为O(nlogn)。[cpp] v
2012-07-20 21:51:17 630
原创 xmu 1303.田教主的卡片
#include #include #include //http://acm.xmu.edu.cn/JudgeOnline/problem.php?id=1303//水题,0串或1串,较小。int main(){ int t,i,n; char num[105]; scanf("%d",&t); while(t--) {
2012-07-19 13:25:09 1344
原创 xmu 1229.Sherwood算法——二叉排序树
#include #include int length;int a[100001];void Exchange(int *a,int *b){ int temp=*a; *a=*b; *b=temp;}void Min_Heapify(int a[],int i)//保持最小堆性{ int l=i*2,r=i*2+1
2012-07-18 20:50:00 542
转载 xmu 1033.Brackets sequence
http://blog.csdn.net/mr_jj_lian/article/details/6820538//这道DP可以把字符串的长度看成是一个状态,长字符串是由子字符串的最优解得到,当字符串长度为1时均赋值为1,则当字符str[i]与str[j]匹配时,这时dp[i][j]=min(dp[i],dp[i+1][j-1])。对于不能品配的字符串dp[i][
2012-07-16 20:04:24 450
转载 线段树
从简单说起,线段树其实可以理解成一种特殊的二叉树。但是这种二叉树较为平衡,和静态二叉树一样,都是提前已经建立好的树形结构。针对性强,所以效率要高。这里又想到了一句题外话:动态和静态的差别。动态结构较为灵活,但是速度较慢;静态结构节省内存,速度较快。接着回到线段树上来,线段树是建立在线段的基础上,每个结点都代表了一条线段[a , b]。长度为1的线段成为元线段。非元线段都有两个子结点,左结点
2012-07-16 11:14:32 1278
原创 xmu 1322.希腊议员
#include #include #include long city[202][202];double time[202][202];/*最短路问题, 两次floyd即可,第一次求出任意两个城市间的最短路, 第二次根据最短路求出任意两个城市相互到达所需消耗的最小时间。*/int main(){ int tixt[202]; i
2012-07-15 21:10:46 430
原创 xmu 1182.螺旋数字矩阵
#include #include #include #define MAX 20 int main() { int a[MAX][MAX]; memset(a,0,sizeof(a)); int n,m,i,j; scanf("%d%d",&n,&m); for(i=1;i
2012-07-15 16:42:23 385
原创 xmu 1177.变态杨辉三角
#include #include #define N 20 int main() { int ai[N][N]= {0}; int i,j,n; scanf("%d",&n); if(n==1) { printf("%d\n",1); } if(n=
2012-07-15 16:40:59 409
原创 xmu 1324.跳舞小人
#include #include #include #include using namespace std;char str1[100001],str2[100001];stack s;int main(){ char ch; scanf("%s",str1); int len=strlen(str1); whil
2012-07-15 13:45:00 2396
原创 xmu 1069.圣斗士黄金十二宫(五)卡妙的提问
#include #include #include int main(){ int a,b,c,d,k; scanf("%d%d%d%d",&a,&b,&c,&d); if((b+c)==(a+d)) { printf("no solution\n"); return 0; } if(
2012-07-14 22:38:58 2720
原创 xmu 1196.ACM
#include #include #include int main(){ char str[5005]; int t; scanf("%d",&t); while(t--) { scanf("%s",str); int len; len=strlen(str);
2012-07-14 22:18:03 465
原创 xmu 1088.数理逻辑考试
#include #include #include using namespace std;#define MAX 102int score[MAX],pecent[MAX];int Result(int m,int n){ int temp=0; for(int i=m-1; i>=0; i--) temp+=score
2012-07-14 18:32:52 832
原创 xmu 1206.水题Ⅷ--汉诺塔
#include #include #include using namespace std;#define mod 199999int b[35];int k;//f[n]=f[n-1]*3+2=3^n-1void binary(int n){ for(k=0;n;k++) { b[k]=n%2?1:0;
2012-07-14 15:51:03 2906
转载 错排问题 xmu 1052.False
定义: n个有序的元素应有n!个不同的排列,如若一个排列使得所有的元素不在原来的位置上,则称这个排列为错排,有的叫重排。1 2 3 4的错排有4 3 2 1,4 1 2 3,4 3 1 2,3 4 1 2,3 4 2 1,2 4 1 3,2 1 4 3,3 1 4 2,2 3 4 1。第一列是4分别与1,2,3互换位置,其余两个元素错排.由此生成的。
2012-07-12 21:56:02 723
转载 xmu 1170区间查找
#include #include #include #include using namespace std;#define maxs(a,b) a>b?a:b#define mins(a,b) aconst int MAXN=100001;int d[MAXN],n;int dpmax[MAXN][17];void create_Dpmax()
2012-07-11 14:06:05 1863 3
转载 树状数组
我们知道要是一个数组的和C[i]=A[1]+A[2]+.......+A[i],那么我更改其中任意一项值A[i],那么C[i],C[i+1],C[i+2]....C[n]都会随之变化,所以我们要调整C[]当n非常大时就需要很长的时间,必然会导致超时。这样就可以引入树状数组,它的修改和求和的复杂度为nlogn.树状数组是一种数组结构,能够高效地获取数组中连续n个数的和。下面这张图是基
2012-07-11 12:28:39 683
原创 xmu 1346.分数比较
#include #include int c[200];int flag=2,lx,ly;void mulit(char a[],char b[],char w[]){ int i,j,la,lb,k; la=strlen(a); lb=strlen(b); memset(c,0,sizeof(c)); for(j
2012-07-10 18:43:54 408
计算机端口TCPIP详细介绍
2011-04-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人