科技节程序设计竞赛三等奖作品--杨尊
用时:2小时
第一题
源代码
#include<stdio.h>
#include<stdlib.h>
intmain()
{
int x,y,m,n,L;
int Mycount=0;
int A,B;
scanf("%d %d %d %d%d",&x,&y,&m,&n,&L);
A=x;B=y;
if(m==n)
{
puts("Impossible");
return 0;
}
while(A!=B)
{
if(A+m>L) A=A+m-L;
else A=A+m;
if(B+n>L) B=B+n-L;
else B=B+n;
Mycount++;
}
printf("%d",Mycount);
return 0;
}
第二题
源代码
#include<stdio.h>
#include<stdlib.h>
#defineMAX 30
intAn[MAX]={0};
intmath(int n)
{
int mult=1;
while(n)
{
mult*=n;
n--;
}
return mult;
}
intmain()
{ //m=n!/(A1!*A2!***An!)
int n,m,i,j;
int son=1,mom=1,sum=0;
while(scanf("%d",&n)&&n!=0)
{
sum=0;
son=1;mom=1;
for(i=0;i<n;i++)
{
scanf("%d",&An[i]);
sum+=An[i];
}
for(j=0;j<n;j++) mom*=math(An[j]);
son=math(sum);
m=son/mom;
printf("%d\n",m);
}
return 0;
}
第三题
源代码
#include<stdio.h>
#include<stdlib.h>
#defineMAX 110
intT[MAX];
intmain()
{
int i,j,N,a;
scanf("%d",&N);
for(i=0;i<N;i++)
{
scanf("%d",&T[i]);
}
for(j=0;j<N;j++)
{
a=T[j]-(T[j]/300)*300;
if(a<150)printf("%d\n",a);
else if(a>=200)
{
a=a-200;
printf("%d\n",a);
}
else if(a>=150&&a<200)
{
a=a-150;
printf("%d\n",a);
}
}
return 0;
}
推荐阅读