解题思路:我先将我方马的速度和对方马的速度进行了从小到大的排序。然后一组一组比较,我方马的速度大于对方马的速度时,win++;当且仅当赢得比赛的次数大于场数一半时,我方赢得比赛。
注意事项:一组一组比。!!!!!!
参考代码:
#include<stdio.h>
int main()
{
int n,i,v1[1000],v2[1000],win=0,j,t;
while(scanf("%d",&n)!=EOF)
{
if(n==0) break;
for(i=1;i<=n;i++) scanf("%d",&v1[i]);
for(i=1;i<=n;i++) scanf("%d",&v2[i]);
//对两组数据进行冒泡排序;
for(i=1;i<n;i++)
for(j=1;j<=n-i;j++)
{
if(v1[j]>v1[j+1])
{
t=v1[j];v1[j]=v1[j+1];v1[j+1]=t;
}
if(v2[j]>v2[j+1])
{
t=v2[j];v2[j]=v2[j+1];v2[j+1]=t;
}
}
//比较判断能否赢得比赛;
for(i=1,j=1,win=0; i<=n; i++)
{
if(v1[i]>v2[j])
{
win++;
j++;
}
}
if(win>n/2) printf("YES\n");
if(win<=n/2) printf("NO\n");
}
return 0;
}
0.0分
4 人评分