hdu--ACM
小杰博客
这个作者很懒,什么都没留下…
展开
-
hdu 1041 计算机二进制n步操作(大数加法)
#include//#includeusing namespace std;int a[1002][505];int main(){ int i,n,j,t;// memset(a,0,sizeof(a)); a[1][0]=0;a[2][0]=1;a[3][0]=1; for(i=4;i { t=0; for(j=0;j { a[i][j]=a[i-1][j]+2*a[i-2][j]+t;原创 2010-12-08 16:20:00 · 715 阅读 · 0 评论 -
十进制转化为任意进制的数
<br />#include "stdio.h"int main(){ int i,j,n,a[10000],m; while (scanf("%d %d",&n,&m)!=EOF) { i=0; while(n) { a[i++]=n%m; n/=m; } for (j=i-1;j>=0;j--) { if(a[j]>=10) printf("%c",a[j]-10+'A'); else printf("%d",a[j原创 2011-06-01 20:12:00 · 391 阅读 · 0 评论 -
队列排序,队头比较
<br />#include "stdio.h"int main(){ int i,j,n,k; int a[10000],b[10000],c[20000]; while (scanf("%d",&n)!=EOF) { for(i=0;i<n;i++) scanf("%d",&a[i]); for(i=0;i<n;i++) scanf("%d",&b[i]); i=0;j=0;k=0; while(i<n&&j<n) { if(原创 2011-06-02 19:25:00 · 736 阅读 · 0 评论 -
hdu--2503 统计第几小数(非常精炼)
<br />#include "iostream"#include "algorithm"using namespace std;int main(){ int i,n,m,t,j,k,temp,a[1002],flag,u,max; int sum[10000]; scanf("%d",&t); while (t--) { memset(sum,0,sizeof(sum)); scanf("%d %d",&n,&m); for(i=0;原创 2011-06-02 19:51:00 · 453 阅读 · 0 评论 -
hdu--2564 词组缩写(要用字符串来做,最后要加上结束符)
<br />#include "stdio.h"#include "string.h"#include "stdlib.h"#include "math.h"int main(){ int h, m, s, t, n, i,len,temp,j,k,min,min2,make; char a[100000],str[10000]; scanf("%d/n",&t); while (t--) { gets(a); len=原创 2011-06-01 14:41:00 · 1029 阅读 · 0 评论 -
hdu--2504 a,b,c (a,c)=b,已知a,b求c
<br />#include "stdio.h"#include "string.h"#include "stdlib.h"#include "math.h"int main(){ int h, m, s,s1, t, n,a1, i,len,temp,j,k,k1,k2,min,min2,make; int a,b; scanf("%d",&t); while (t--) { scanf("%d%d",&a,&b); k=2;a1=a原创 2011-06-01 16:43:00 · 488 阅读 · 0 评论 -
hdu--2537 8球制胜
<br />#include "stdio.h"#include "string.h"int main(){ int i,j,n,numr,numy; char a[100]; while (scanf("%d",&n)!=EOF&&n!=0) { numr=numy=0; scanf("%s",a); n=strlen(a); for (i=0;i<n;i++) { if(a[i]=='R') numr++; if(a[i]=原创 2011-06-01 20:19:00 · 465 阅读 · 0 评论 -
hdu--2521 反素素(题目具有迷惑性)
<br />#include "stdio.h"#include "string.h"#include "math.h"int main(){ int i,n,m,tt,t,j,k,flag,max,count[5002]; for(i=1;i<=5001;i++) { count[i]=0; } count[1]=1;count[2]=2;count[3]=2; for (i=4;i<=5001;i++) {原创 2011-06-02 16:13:00 · 643 阅读 · 0 评论 -
hdu--1016 素素环(dfs)
#include "stdio.h"#include "string.h"#include "math.h"int visit[22],save[22];int n,k=1,cur;int Isprime(int x){ int i; if(x==1||x==2) return 1; for(i=2;i<=sqrt(x);i++) { if(x%i原创 2011-06-12 11:17:00 · 532 阅读 · 0 评论 -
hdu--1342 lotto(回溯法)
#include "stdio.h"#include "string.h"#include "math.h"int main(){ int i,j,n,f=0; int a[13],b[6]; while(scanf("%d",&n)&&n!=0) { if(f) puts(""); for(i=0;i<n;i++) scanf("%d",&a[i]原创 2011-06-12 15:59:00 · 478 阅读 · 0 评论 -
hdu--1342 lotto (dfs)
#include "stdio.h"#include "string.h"#include "math.h"int visit[14],save[6],a[14];int n,cur;void DFS(int cur,int start){ int i; if(cur==6) { printf("%d",a[save[0]]); for(i=1;原创 2011-06-12 16:54:00 · 618 阅读 · 0 评论 -
hdu--1372 knight moves (BFS+数据结构)
#include "iostream"#include "queue"using namespace std;int dir[8][2]={1,2,1,-2,2,1,2,-1,-1,2,-1,-2,-2,1,-2,-1};int vis[8][8];struct node{ int x; int y; int lev;};int BFS(node s原创 2011-06-19 16:51:00 · 552 阅读 · 0 评论 -
hdu-2602 捡骨头(dp)
#include "stdio.h"int a[1000],v[1000];int s[1000][1000];int main(){ int n,i,j,t,vo; scanf("%d",&t); while(t--) { scanf("%d%d",&n,&vo); for(i=0;i<n;i++) scanf("%d",&原创 2011-06-23 20:22:00 · 824 阅读 · 0 评论 -
hdu-1003 max sum (dp,注意初始化和最后位置的确定)
#include "stdio.h"#include "math.h"int main(){ long i,t,start,end,max,num,now; long pos1,pos2; long a[100000],n; scanf("%ld",&t); num=1; while(t--) { scanf("%ld %ld",&n,原创 2011-06-24 16:33:00 · 517 阅读 · 0 评论 -
hdu--1159 common sequense(最长公共子序列)
#include "stdio.h"#include "math.h"#include "string.h"int s[1000][1000];int main(){ char str1[1000],str2[1000],str3[1000]; int len1,len2,i,j; while(scanf("%s %s",str1,str2)!原创 2011-06-25 10:26:00 · 396 阅读 · 0 评论 -
hdu--2561(第二小数,时间复杂度为0(n))
<br />#include "stdio.h"#include "string.h"#include "math.h"int main(){ int h, m, s, t, n, i,len,temp,j,k,min,min2,make; int a[100]; scanf("%d",&t); while (t--) { scanf("%d",&n); min=100; for (i=0;i<n;i++) { scanf(原创 2011-06-01 13:47:00 · 584 阅读 · 0 评论 -
hdu-2205(没做出来,意思理解错了)
<br />#include "stdio.h"#include "string.h"#include "algorithm"int main(){ int k1, k2, len1,len2, i, j,a[27],sum,make; char str1[100002], str2[100002]; while(scanf("%s %s",str1,str2)!=EOF) { k1=k2=0;sum=0;make=0; for(i=0;i<26;i++)原创 2011-05-31 22:10:00 · 781 阅读 · 0 评论 -
hdu--2203--亲和数(循环a串使包含b串)
<br />#include "stdio.h"#include "string.h"int main(){ int k, len1,len2, i, j, km1,km2; char str1[100002], str2[100002]; while(scanf("%s %s",str1,str2)!=EOF) { k=0; len1=strlen(str1); len2=strlen(str2); if(len1<len2) printf("no/n"原创 2011-05-31 20:40:00 · 518 阅读 · 0 评论 -
杭电ACM题目分类大全
1001 这个就不用说了吧 1002 简单的大数 1003 DP经典问题,最大连续子段和 1004 简单题 1005 找规律(循环点) 1006 感觉有点BT的题,我到现在还没过 1007 经典问题,最近点对问题,用分治 1008 简单题 1009 贪心 1010 搜索题,剪枝很关键 1011 1012 简单题 1013 简单题(有个小陷阱) 101转载 2010-12-09 08:34:00 · 7171 阅读 · 0 评论 -
hdu 2048 全错总数
<br /><br />#include<iostream><br />using namespace std;<br />//long long c[42];<br />int main()<br />{<br /> int i,n;<br /> __int64 c[25],a[25];<br /> c[1]=0;c[2]=1;c[3]=2;<br /> for(i=4;i<=21;i++)<br /> {<br /> c[i]=(i-1)*(c[i-1]+c[i-2]);<br /> }<br />原创 2010-12-08 17:22:00 · 310 阅读 · 0 评论 -
HDU 2047 阿牛的EOF牛肉串
<br /><br />#include<iostream><br />using namespace std;<br />//long long c[42];<br />int main()<br />{<br /> int i,n;<br /> __int64 c[42];<br /> c[1]=3;c[2]=8;<br /> for(i=3;i<=40;i++)<br /> {<br /> c[i]=2*(c[i-1]+c[i-2]);<br /> }<br /> while(scanf("%d",原创 2010-12-08 16:58:00 · 588 阅读 · 0 评论 -
hdu--2674 求N!%2009的结果
<br />#include "math.h"<br />#include "stdio.h"<br />#include "string.h"<br />void main()<br />{<br /> __int64 N,s,i;<br /> while(scanf("%I64d",&N)!=EOF)<br /> {<br /> s=1;<br /> if (N>=41)<br /> {<br /> printf("0/n");<br /> }<br /> e原创 2011-03-09 20:49:00 · 454 阅读 · 0 评论 -
hdu--1016 Prime Ring Problem(回溯法求解)
<br />#include "stdio.h"<br />#include "math.h"<br />int a[22];<br />int IsPrime(int num)<br />{<br /> int i;<br /> for (i=2;i<=sqrt(num);i++)<br /> {<br /> if (num%i==0)<br /> {<br /> return 0;<br /> }<br /> }<br /> return 1;<br />}<br />int AllPrime原创 2011-03-26 15:14:00 · 378 阅读 · 0 评论 -
hdu--1010(走迷宫,指定时间内到达目的)(DFS+剪枝)
Problem DescriptionThe doggie found a bone in an ancient maze, which fascinated him a lot. However, when he picked it up, the maze began to shake, and the doggie could feel the ground sinking. He realized that the bone was a trap, and he tried desperately原创 2011-03-26 20:24:00 · 724 阅读 · 0 评论 -
hdu2076--时钟夹角
<br />#include "stdio.h"#include "math.h"int main(){ int h, m, s; int n,th0; double th; scanf("%d",&n); while (n--) { scanf("%d %d %d",&h,&m,&s); th = fabs( (6*m+ (double)s/10)-( (double)(60*m+s)/120+30*(h%12) ) ); if(th>180)原创 2011-05-31 19:39:00 · 661 阅读 · 0 评论 -
hdu--2565--打印放大的"X”(每行X后面的空格不能输出,真是无聊)
<br />#include "stdio.h"#include "string.h"#include "stdlib.h"#include "math.h"int main(){ int h, m, s, t, n, i,len,temp,j,k,min,min2,make; char a[100000],str[10000]; scanf("%d/n",&t); while (t--) { scanf("%d",&n); for (i=原创 2011-06-01 15:12:00 · 730 阅读 · 0 评论 -
hdu--2563 统计步数(分水平和竖直)
<br />#include "stdio.h"#include "string.h"#include "stdlib.h"#include "math.h"int main(){ int h, m, s, t, n, i,len,temp,j,k,min,min2,make; int x[21],y[21],z[21]; x[1]=2;y[1]=1;z[1]=3; for (i=1;i<20;i++) { x[i+1]=x[i]+2*y[i]; y原创 2011-06-01 15:31:00 · 601 阅读 · 0 评论 -
hdu--2503--分数求和
#include "stdio.h"#include "string.h"#include "stdlib.h"#include "math.h"int main(){ int h, m, s,s1, t, n, i,len,temp,j,k,k1,min,min2,make,a,b,c,d; scanf("%d/n",&t); while (t--) { scanf("%d%d%d%d",&a,&b,&c,&d); s=a*d+b*c原创 2011-06-01 15:52:00 · 639 阅读 · 0 评论 -
hdu--1002 大数相加 (连起来相加很容易,分开为啥错了?)
#include "stdio.h"#include "string.h"int main(){ int lena,lenb,i,j,n,t,temp,k,num,count; int c[1002]={0}; int a[1002]={0},b[1002]={0}; char a1[1002],b1[1002]; scanf("%d",&num);count原创 2011-06-03 18:37:00 · 452 阅读 · 0 评论 -
hdu--2501 骨牌的总数
<br />#include "stdio.h"#include "string.h"#include "stdlib.h"#include "math.h"int main(){ int i,n,t; int a[35]; a[0]=0;a[1]=0;a[2]=1; for (i=1;i<=30;i++) { a[i+2]=a[i+1]+2*a[i]; //分为3类,2*1横竖,2*2 } scanf("%d",&t); while原创 2011-06-01 17:23:00 · 515 阅读 · 0 评论 -
hdu--2522 求1/n的第一个循环节
<br />#include "stdio.h"#include "string.h"int main(){ int i,j,n,t,temp; int a[100002],mark[100002]; scanf("%d",&t); while (t--) { scanf("%d",&n); if(n<0) {printf("-");n=0-n;} if(n==1) {printf("1/n");continue;} memset(a,0,siz原创 2011-06-02 21:17:00 · 853 阅读 · 0 评论 -
hdu--2080 求角度
<br />#include "stdio.h"#include "math.h"int main(){ double x1,x2,y1,y2,recos,angle1,angle2,cos0,th; int n; scanf("%d/n",&n); while (n--) { scanf("%lf %lf %lf %lf",&x1,&y1,&x2,&y2); angle1 = x1*x1+y1*y1+x2*x2+y2*y2-((x1-x2)*(x1-x2)+(y原创 2011-05-31 16:10:00 · 594 阅读 · 0 评论 -
hdu-1789(doing home work again 贪心算法)
#include "iostream"#include "cmath"#include "string"#include "algorithm"using namespace std;typedef struct node{ int sub; int sco;}stud;int cmp(const void *a,const void *b){原创 2011-06-26 14:05:00 · 654 阅读 · 0 评论