西工大C语言POJ作业.docx
- 文档编号:10414445
- 上传时间:2023-02-11
- 格式:DOCX
- 页数:17
- 大小:481.02KB
西工大C语言POJ作业.docx
《西工大C语言POJ作业.docx》由会员分享,可在线阅读,更多相关《西工大C语言POJ作业.docx(17页珍藏版)》请在冰豆网上搜索。
西工大C语言POJ作业
T081、阶乘合计
#include
intfun(intn)
{
inti,m=1,sum=0;
for(i=1;i<12;i++)
{
m*=i;
sum+=m;
if(n==m)return1;
if(m>n)break;
}
if(sum-m else returnfun(n-m/i); } intmain() { intn; scanf("%d",&n); if(fun(n)) printf("YES\n"); else printf("NO\n"); return0; } T082、路痴 #include intmain() { charfx[5];intn,i,d,j; scanf("%s%d",fx,&n)! =EOF; { switch(fx[0]) { case'S': d=0;break; case'E': d=1;break; case'N': d=2;break; case'W': d=3;break; } for(i=0;i { scanf("%d",&j); if(j==0)d++; elsed--; } d%=4; switch(d>=0? d: d+4) { case0: printf("South\n");break; case1: printf("East\n");break; case2: printf("North\n");break; case3: printf("West\n");break; } } return0; }T083、三点顺序 #include intmain() { intx1,y1,x2,y2,x3,y3; scanf("%d%d%d%d%d%d",&x1,&y1,&x2,&y2,&x3,&y3); { if((x2-x1)*(y3-y1)-(x3-x1)*(y2-y1)>0) printf("0\n");//逆时针 else printf("1\n");//顺时针 } return0; } T084、TheRatioofgainerstolosers #include #include intmain() { inta,b,p,q,p1,q1; scanf("%d%d",&a,&b); p=1,q=0; for(q1=1;q1<=b;q1++) { p1=(double)(q1*a)/(double)b+0.5; if(q*fabs(a*q1-b*p1) { q=q1; p=p1; printf("%d/%d\n",p,q); } if(a*q==b*p) break; } return0; } T085、最长回文子串 #include #include #include intmain() { chars[5001],s1[5000]; intpri[5000],max=0,len,i,j,x,y,m=0; gets(s); len=strlen(s); for(i=0;i { if(isalpha(s[i]))//是否为字母 { pri[m]=i;//保存实际位置 s1[m++]=toupper(s[i]);//转换为大写字母 } } for(i=0;i { for(j=0;i-j>=0&&i+j { if(s1[i-j]! =s1[i+j])break; if(2*j+1>max) { max=2*j+1; x=pri[i-j]; y=pri[i+j]; } } for(j=0;i-j>=0&&i+j { if(s[i-j]! =s1[i+j+1])break; if(2*j+2>max) { max=2*j+2; x=pri[i-j]; y=pri[i+j+1]; } } } for(i=x;i<=y;i++) printf("%c",s[i]); printf("\n"); return0; } T086、Easyproblem #include #include #include intmain() { intk; longlongi,N; { k=0; scanf("%I64d",&N); for(i=1;(i+1)*(i+1)<=N+1;i++) { if((N+1)%(i+1)==0) { k++; } } printf("%d\n",k); } return0; } T087、Hailstone #include #definemax(a,b)a>b? a: b #definemin(a,b)a>b? b: a intmain() { inta,b,m,n,max,count,k; scanf("%d%d",&a,&b); m=max(a,b); n=min(a,b); max=0; for(;n<=m;n++) { k=n; count=1; while(k! =1) { if(k%2==1) k=3*k+1; else k/=2; count++; } if(count>max) max=count; } printf("%d%d%d\n",a,b,max); return0; } T088、公园喷水器 #include #include intmain() { floata[600],t,sum=0; intn,i,j; scanf("%d",&n);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 西工大 语言 POJ 作业