西工大C语言POJ作业.docx
- 文档编号:7603465
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:18
- 大小:808.91KB
西工大C语言POJ作业.docx
《西工大C语言POJ作业.docx》由会员分享,可在线阅读,更多相关《西工大C语言POJ作业.docx(18页珍藏版)》请在冰豆网上搜索。
西工大C语言POJ作业
T091、Houseboat
#include
#definePI3.1415926
intmain()
{
inti,n;
doubleyear,x,y;
scanf("%d",&n);
for(i=0;i { scanf("%lf%lf",&x,&y); year=PI*(x*x+y*y)/100; printf("%d%d\n",i+1,(int)year+1); } return0; } T092、Sticks #include #include #include intlen[64],n,minlen,get; boolb[64]; intcmp(constvoid*a,constvoid*b) { return*(int*)a<*(int*)b? 1: -1; } booldfs(intnowlen,intnowget,intcnt) { if(cnt>=n)returnfalse; if(get==nowget)returntrue; inti; boolf=false; if(nowlen==0)f=true; for(i=cnt;i { if(! b[i]) { if(len[i]+nowlen==minlen) { b[i]=true; if(dfs(0,nowget+1,nowget)) returntrue; b[i]=false; returnfalse; } elseif(len[i]+nowlen { b[i]=true; if(dfs(nowlen+len[i],nowget,i+1)) returntrue; b[i]=false; if(f)returnfalse; while(i+1 } } } returnfalse; } intmain() { inti,tollen; while(scanf("%d",&n),n) { tollen=0; intj=0,p; for(i=0;i { scanf("%d",&p); if(p<=50) { len[j]=p; tollen+=len[j]; j++; } } n=j; if(n==0) { printf("0\n"); continue; } qsort(len,n,sizeof(int),cmp); for(minlen=len[0];;minlen++) { if(tollen%minlen)continue; memset(b,0,sizeof(b)); get=tollen/minlen; if(dfs(0,0,0)) { printf("%d\n",minlen); break; } } } return0; } T093、Checksumalgorithm: #include intmain() { chara[256]; inti,sum; while(gets(a)&&a[0]! ='#') { sum=0; for(i=0;a[i]! ='\0';i++) if(a[i]! ='') sum+=(i+1)*(a[i]-64); printf("%d\n",sum); } return0; } T094、Bee: #include intmain() { intn,a,b,sum,i,t; while(scanf("%d",&n)! =EOF&&n! =-1) { a=1,b=0,sum=0; for(i=0;i { t=a; a=b+1; b=t+b; sum=a+b; } printf("%d%d\n",b,sum); } return0; } T095、Graveyard: #include #include intmain() { intn,m,i; doubles,a; while((scanf("%d%d",&n,&m))! =EOF) { if(n==0&&m==0)break; s=0; for(i=1;i { a=i*1.0/n*(n+m); s+=fabs(a-floor(a+0.5))/(n+m);/*放缩坐标系floor(a+0.5))/(n+m) 找到离这个对应坐标的最近一个点取得距离累加移动距离*/ } printf("%.4f\n",s*10000); } return0; } T096、Roadtrip #include intmain() { intn,i,speed,hour,h,s;//s是路程,h是上次的时间 while(scanf("%d",&n)&&n! =-1) { s=0; h=0; for(i=1;i<=n;i++) { scanf("%d%d",&speed,&hour); s+=speed*(hour-h); h=hour; } printf("%d",s); } return0; } T097、HanoiII #include #defineM70 intstart[M],targe[M]; longlongf(int*p,intk,intfina) { if(k==0)return0; if(p[k]==fina)returnf(p,k-1,fina); returnf(p,k-1,6-fina-p[k])+(1LL<<(k-1)); } intmain() { longlongans; intn,cas=0; while(scanf("%d",&n),n) { for(inti=1;i<=n;i++)scanf("%d",&start[i]); for(inti=1;i<=n;i++)scanf("%d",&targe[i]); intc=n; for(;c>=1&&start[c]==targe[c];c--); if(c==0){printf("0\n");continue;} intother=6-start[c]-targe[c]; ans=f(start,c-1,other)+f(targe,c-1,other)+1; printf("%lld\n",ans); } return0; } T098、Redistributewealth #include #include #include #include longlongmoney[1000001]; longlongC[1000001]; intmain() { intn,t,i,j; while(scanf("%d",&n)==1) { inti; longlongsum=0; for(i=1;i<=n;++i) { scanf("%lld",&money[i]); sum+=money[i]; } longlongM=sum/n; C[1]=money[1]-M; C[0]=0; for(i=2;i<=n-1;++i) {C[i]=C[i-1]+money[i]-M; } for(i=0;i for(j=0;j if(C[j]>C[j+1]) { t=C[j]; C[j]=C[j+1]; C[j+1]=t; } longlongmid=C[n/2]; longlongsum1=0; for(i=0;i<=n-1;++i) sum1+=abs(mid-C[i]); printf("%lld\n",sum1); } return0; } T099、Dexterneedhelp: #include intfun(inta) { if(a==1)return1; else returnfun(a/2)+1; } intmain() { inta,x; while(scanf("%d",&a)&&a! =0) { x=fun(a); printf("%d\n",x); } return0; } T100、SpecializedNumbers #include intfun(inti,intr) { ints=0; while(i) { s+=i%r; i/=r; } returns; } intmain() { inti; for(i=2992;i<10000;i++) if(fun(i,10)==fun(i,12)&&fun(i,12)==fun(i,16)) printf("%d\n",i); return0; } T100、SpecializedNumbers #include intfun(inti,intr) { ints=0; while(i) { s+=i%r; i/=r; } returns; } intmain() { inti; for(i=2992;i<10000;i++) if(fun(i,10)==fun(i,12)&&fun(i,12)==fun(i,16)) printf("%d\n",i); return0; } (3)#include intmain() { inti,n,sum10,sum12,sum16; for(i=2992;i<10000;i++){ n=i; sum10=0; while(n){ sum10+=n%10; n/=10; } n=i; sum12=0; while(n){ sum12+=n%12; n/=12; } n=i; sum16=0; while(n){ sum16+=n%16; n/=16; } if(sum10==sum12&&sum12==sum16)printf("%d\n",i); } return0; }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 西工大 语言 POJ 作业