1
#include<stdio.h>
int main(){
int n,sum=0,i,v=0,tmp;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&tmp);
if(tmp>=v) v=tmp;
else {
sum+=v-tmp;
}
}
printf("%d\n",sum);
return 0;
}
2#include<stdio.h>
int main(){
int m,n,k;
scanf("%d",&m);
while(m--){
scanf("%d %d",&n,&k);
int mark[n],i;
for(i=0;i<n;i++) mark[i]=1;
int sum=n-1,p=0,tmp=k;
while(sum){
if(mark[p]==1){
p++;
if(p>=n) p-=n;
tmp--;
}
else{
p++;
if(p>=n) p-=n;
}
if(tmp==0){
if(p-1>=0)
mark[p-1]=0;
else mark[p-1+n]=0;
sum--;
tmp=k;
}
}
int ans;
for(i=0;i<n;i++) if(mark[i]!=0) ans=i;
char name[50];
for(i=0;i<n;i++){
scanf("%s",name);
if(i==ans) printf("%s\n",name);
}
}
return 0;
}
3#include<stdio.h>
int main(){
int x1=0,b1,b2;
char input[100];
scanf("%s",input);
scanf("%d",&b1);
scanf("%d",&b2);
int i,flag=0,no;
for(i=0;input[i];i++){
if(input[i]>='0'&&input[i]<='9') no=input[i]-'0';
else if(input[i]>='A'&&input[i]<='F') no=input[i]-'A'+10;
if(no>=b1) flag=1;
x1*=b1;
x1+=no;
}
char ans[100];
int n=0;
while(x1){
if(x1%b2>=10) ans[n]=x1%b2-10+'A';
else ans[n]=x1%b2+'0';
n++;
x1/=b2;
}
for(i=n-1;i>=0;i--) printf("%c",ans[i]);
puts("");
return 0;
}
4#include<stdio.h>
int main(){
int n;
scanf("%d",&n);
int top=1;
while(n-->1) top*=10;
int i;
for(i=1;i<top;i++){
int t=i,sum=0,p=1;
while(t){
int tmp=t%10;
t/=10;
sum+=tmp;
p*=tmp;
}
if(sum==p) printf("%d\n",i);
}
puts("");
return 0;
}
5#include<stdio.h>
#include<math.h>
double dist (double x,double y,double a,double b){
return sqrt((x-a)*(x-a)+(y-b)*(y-b));
}
int main(){
int n;
int x[100],y[100];
scanf("%d",&n);
int i,j;
double min=1e9;
for(i=0;i<n;i++) scanf("%d %d",&x[i],&y[i]);
for(i=0;i<n;i++)
for(j=i+1;j<n;j++){
//printf("(%d,%d)-(%d,%d) %f\n",x[i],y[i],x[j],y[j],dist(x[i],y[i],x[j],y[j]));
if(dist(x[i],y[i],x[j],y[j])<=min&&i!=j) min=dist(x[i],y[i],x[j],y[j]);
}
printf("%.4f\n",min);
return 0;
}
沒有留言:
張貼留言