杭电acm22012700.docx
《杭电acm22012700.docx》由会员分享,可在线阅读,更多相关《杭电acm22012700.docx(31页珍藏版)》请在冰豆网上搜索。
![杭电acm22012700.docx](https://file1.bdocx.com/fileroot1/2022-11/25/7d65c843-9f9b-4249-9f70-6c3f83f38d0b/7d65c843-9f9b-4249-9f70-6c3f83f38d0b1.gif)
杭电acm22012700
2201:
#include
usingnamespacestd;
intmain()
{
doublen,m;
while(cin>>n>>m)
{
doublek=1/n;
printf("%.2f",k);
cout<}
return0;
}
2212:
#include
main()
{
printf("1\n2\n145\n40585\n");
}
2304:
#include
intmain()
{
intsum,num,t,n,i;
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
sum=0;
for(i=0;i{
scanf("%d",&num);
sum+=num;
}
printf("%d\n",sum-n+1);
}
return0;
}
2309:
#include
main()
{
intn,i,s,x,y,a;
while(scanf("%d",&n)!
=EOF&&n)
{
x=0,y=1000;
for(i=1,s=0;i<=n;i++)
{
scanf("%d",&a);
s+=a;
if(a>x)
x=a;
if(ay=a;
}
printf("%d\n",(s-x-y)/(n-2));
}
}
2317:
#include
main()
{
inti;
longa[3],k;
scanf("%d",&i);
while(i--)
{
scanf("%ld%ld%ld",&a[0],&a[1],&a[2]);
k=a[1]-a[2];
if(a[0]printf("advertise\n");
elseif(a[0]==k)
printf("doesnotmatter\n");
else
printf("donotadvertise\n");
}
}
2401:
#include
intmain()
{
inta,b,c,d,sum;
while(scanf("%d%d%d%d",&a,&b,&c,&d)!
=EOF)
{
sum=a*(a-1)/2*b;
if(sum==d)
printf("%d\n",a);
else
printf("%d\n",(sum-d)/c);
}
return0;
}
2500:
#include
main()
{
intn,m,i,j;
scanf("%d",&n);
while(n--)
{
scanf("%d",&m);
for(i=0;i{
for(j=0;jprintf("HDU");
puts("");
}
}
}
2501:
#include
main()
{
intt,n,i,a[31];
a[1]=1;
a[2]=3;
for(i=3;i<=31;i++)
a[i]=2*a[i-2]+a[i-1];
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
printf("%d\n",a[n]);
}
}
2502:
main()
{
intn,m;
scanf("%d",&n);
while(n--)
{
scanf("%d",&m);
printf("%d\n",(m+1)*(1<}
}
2503:
#include
usingnamespacestd;
intgcd(inta,intb)
{
intc=a%b;
while(c)
{
a=b;
b=c;
c=a%b;
}
returnb;
}
intmain()
{
intn,a,b,c,d,t1,t2,t;
cin>>n;
while(n--)
{
scanf("%d%d%d%d",&a,&b,&c,&d);
t1=a*d+b*c;
t2=b*d;
t=gcd(t1,t2);
printf("%d%d\n",t1/t,t2/t);
}
return0;
}
2504:
#include
intgcd(inta,intb)
{
returna%b==0?
b:
gcd(b,a%b);
}
intmain()
{
intn,a,b,c,temp,i;
scanf("%d",&n);
while(n--){
scanf("%d%d",&a,&b);
temp=a/b;
for(i=2;iif(gcd(temp,i)==1){
break;
}
}
c=b*i;
printf("%d\n",c);
}
return0;
}
2519:
#include
#include
intmain()
{
intT,n,m,i;
doublenum;
scanf("%d",&T);
while(T--)
{
scanf("%d%d",&n,&m);
num=1;
for(i=1;i<=m;i++)
num*=(1.0*(n-i+1)/i);
printf("%.f\n",floor(num+0.5));
}
return0;
}
2520:
#include
intmain()
{
intt;
__int64n,k;
scanf("%d",&t);
while(t--)
{
scanf("%I64d",&n);
k=n*n;
if(k>10000)
printf("%I64d\n",k%10000);
else
printf("%I64d\n",k);
}
return0;
}
2521:
#include"stdio.h"
intc[5001];
intmain()
{
inti,n,j,a,b,t,max;
for(i=2;i<5001;i++)
c[i]=2;
c[1]=1;
for(i=2;i<=2500;i++)
{
for(j=i+i;j<=5000;j+=i)
{
c[j]++;
}
}
scanf("%d",&n);
for(i=0;i{
max=0;
scanf("%d%d",&a,&b);
for(j=a;j<=b;j++)
if(c[j]>max)
{
max=c[j];t=j;
}
printf("%d\n",t);
}
return0;
}
2522:
#include
#include
charb[500001]={0};
intmain()
{
intt,i,d,n,s;
scanf("%d",&t);
while(t--)
{
memset(b,0,sizeof(b));
scanf("%d",&n);
if(n<0)
{
printf("-");
n=-n;
}
if(n==1)
{
printf("%d\n",n);
continue;
}
else
printf("0.");
d=1;b[0]=1;
for(i=1;;i++)
{
b[d]++;
s=d*10/n;
if(b[d]==2)
break;
printf("%d",s);
d=d*10-s*n;
}
printf("\n");
}
}
2523:
#include
#include
usingnamespacestd;
intmain()
{
intn,m,t,a[1001],b[2002],w,i,j;
scanf("%d",&n);
while(n--)
{
scanf("%d%d",&m,&t);
memset(b,-1,sizeof(b));
w=0;
for(i=0;iscanf("%d",&a[i]);
for(i=m-1;i>=0;i--)
for(j=0;j
b[abs(a[i]-a[j])]=abs(a[i]-a[j]);
for(i=0;i<2002;i++)
{
if(b[i]!
=-1)
{
w++;
if(w==t)
{
printf("%d\n",b[i]);
break;
}
}
}
}
return0;
}
2524:
#include
intmain()
{
intt,n,m;
scanf("%d",&t);
while(t--)
{
scanf("%d%d",&n,&m);
printf("%d\n",n*(n+1)/2*m*(m+1)/2);
}
return0;
}
2535:
#include
intmain()
{
intn,t,c,f[102],i,j,k;
while(scanf("%d",&n)!
=EOF&&n!
=0)
{
for(i=0;i{
scanf("%d",&f[i]);
}
for(i=0;i{
for(j=0;j{
if(f[j]>f[j+1])
{
t=f[j];
f[j]=f[j+1];
f[j+1]=t;
}
}
}
c=0;
if(n%2!
=0)
k=(n+1)/2;
else
k=n/2+1;
for(i=0;i{
if(f[i]%2!
=0)
c+=(f[i]+1)/2;
else
c+=f[i]/2+1;
}
printf("%d\n",c);
}
return0;
}
2537:
#include
usingnamespacestd;
chardig[20];
intmain()
{
intn;
while(cin>>n&&n)
{
intsum1=0,sum2=0;
for(inti=0;i{
cin>>dig[i];
if(dig[i]=='R')sum1++;
if(dig[i]=='Y')sum2++;
}
if(sum1<7&&sum2<7&&dig[n-1]=='L'||sum1==7&&sum2<7||sum1==7&&sum2==7&&dig[n-1]=='B')
cout<<"Red"<else
cout<<"Yellow"<}
return0;
}
2539:
#include
#include
intmain()
{
intT,a[9],b[9],t,i,j,k,len,sum1,sum2;
chars[100];
while(scanf("%d",&T)!
=EOF&&T)
{
getchar();
j=k=0;
for(t=0;t{
gets(s);
len=strlen(s);
for(i=len-1;i>=0;i--)
if(s[i]=='')
{
if(t%2==0)
{
if(s[i-1]=='o'&&s[i-2]=='n'&&s[i-3]=='')
a[j]=0;
else
a[j]=1;
j++;
}
else
{
if(s[i-1]=='o'&&s[i-2]=='n'&&s[i-3]=='')
b[k]=0;
else
b[k]=1;
k++;
}
break;
}
}
sum1=sum2=0;
for(i=1;i<=j;i++)
printf("%d",i);
printf("Score\n");
for(i=0;i{
if(a[i]==0)
printf("X");
else
printf("O");
sum1+=a[i];
}
printf("%d\n",sum1);
for(i=0;i{
if(b[i]==0)
printf("X");
else
printf("O");
sum2+=b[i];
}
if(kprintf("-");
printf("%d\n",sum2);
}
}
2547:
#include
#include
intmain()
{
intt;
doublea,b,c,d,ans;
scanf("%d",&t);
while(t--)
{
scanf("%lf%lf%lf%lf",&a,&b,&c,&d);
ans=sqrt(((a-c)*(a-c)+(b-d)*(b-d))*1.0);
printf("%.1lf\n",ans);
}
}
2548:
#include
intmain()
{
intt;
doubleu,v,w,l,ans;
scanf("%d",&t);
while(t--)
{
scanf("%lf%lf%lf%lf",&u,&v,&w,&l);
ans=w*l/(u+v);
printf("%.3lf\n",ans);
}
}
2549:
#include
#include
charx[99];
intmain()
{
inti,n,t,len,ans;
scanf("%d",&t);
while(t--&&scanf("%s%d",x,&n))
{
len=strlen(x);
for(i=0;iif(x[i]=='.')break;
if(len-i-1elseans=x[i+n]-'0';
printf("%d\n",ans);
}
}
2550:
#include
usingnamespacestd;
chara[40]=">+";
intb[2][51];
intmain()
{
inti,j,n,t;
scanf("%d",&t);
while(t--&&scanf("%d",&n))
{
for(i=0;iscanf("%d%d",&b[0][i],&b[1][i]);
for(i=0;ifor(j=i+1;jif(b[0][i]>b[0][j])
{
swap(b[0][i],b[0][j]);
swap(b[1][i],b[1][j]);
}
for(i=0;i{
for(j=2;j
a[j]='-';
a[j]='+';a[j+1]='>';
a[j+2]='\0';
for(j=0;j
printf("%s\n",a);
puts("");
}
}
}
2551:
#include
intnum[1001]={0};
intmain()
{
intn,i,m;
for(i=1;i<1001;i++)//这里先把每个月逐青种的竹子总数计算出来
num[i]=num[i-1]+i*i*i;//以后的数据处理就可以直接找这的计算结果
scanf("%d",&n);
while(n--)
{
scanf("%d",&m);
for(i=0;;i++)
if(m>num[i]&&m<=num[i+1])//i遍历找到符合条件的数
break;
printf("%d\n",i+1);
}
}
2552:
#include
#include
intmain()
{
intt;
doubles,u,v,ans;
scanf("%d",&t);
while(t--&&scanf("%lf%lf",&s,&u))
{
v=atan(1.0/s)-atan(1.0/u);
v=1.0/tan(v);
ans=v*u-s*u-s*v;
printf("%.0lf\n",ans);
}
}
2553:
#include
inta[11]={0,1,0,0,2,10,4,40,92,352,724};
intmain()
{
intn;
while(scanf("%d",&n)&&n)
printf("%d\n",a[n]);
}
2554:
#include
intmain()
{
intn;
while(scanf("%d",&n),n)
puts((n+1)/2%2?
"N":
"Y");
}
2555:
#include
#include
usingnamespacestd;
typedefstruct
{
intx;
inty;
intlen;
}PLAYER;
typedefstruct
{
intx1;
inty1;
intx2;
inty2;
intlen;
}RECTANGLE;
voidmeters(PLAYER*p[],intm,RECTANGLErec[],intn);
voidmysort(PLAYER*p[],intm);
intmain()
{
PLAYERplayer[20000],*p[20000];
RECTANGLErec[100];
intm,mi,n,ni;
while(scanf("%d%d",&m,&n)!
=EOF){
for(mi=0;mi{
p[mi]=&player[mi];
scanf("%d%d",&p[mi]->x,&p[mi]->y);
p[mi]->len=0;
}
for(ni=0;ni{
scanf("%d%d%d%d",&rec[ni].x1,&rec[ni].y1,&rec[ni].x2,&rec[ni].y2);
rec[ni].len=2*(rec[ni].y2-rec[ni].y1+rec[ni].x2-rec[ni].x1);
}
meters(p,m,rec,n);
mysort(p,m);
for(mi=0;miprintf("%d\n",p[mi]->len);
}
return0;
}
voidmeters(PLAYER*p[],intm,RECTANGLErec[],intn)
{
intni,mi;
for(mi=0;mifor(ni=0;niif(p[mi]->x>=rec[ni].x1&&p[mi]->x<=rec[ni].x2&&p[mi]->y>=rec[ni].y1&&p[mi]->y<=rec[ni].y2)
{
p[mi]->len+=rec[ni].len;
break;
}
}
voidmysort(PLAYER*p[],intm)
{
inti,j,k;
PLAYER*t;
for(i=0;i{
k=i;
for(j=i+1;jif(p[k]->len
len)k=j;
t=p[i];p[i]=p[k];p[k]=t;
}
}
2560:
#include
intmain()
{
intn,a,b,m,t,sum=0;
scanf("%d",&n);
while(n--)
{
scanf("%d%d",&a,&b);
t=a*b;
sum=0;
while(t--)
{
scanf("%d",&m);
if(m==1)sum++;
}
printf("%d\n",sum);
}
}
2561:
#include
main()
{
intT,i,n,a,f,s,m;
for(scanf("%d",&T);T>0;T--)
{
scanf("%d",&n);
f=100;
s=100;
for(i=0;i{
scanf("%d",&a);
if(a<=s)s=a;
if(s<=f){m=s;s=f;f=m;}
}
printf("%d\n",s);
}
}
2562:
#include
#include
intmain()
{
intn,i