0
已采纳
宫西诚
修练者
修练者
你好,张希晨
这题需要先定义两个一维数组,一个用来存积分,另一个存编号,
再从大到小排序,中间判断:如果相等,交换序号,不相等,两个都交换
最后输出序号数组,上代码
for(int i=1;i<=n;i++) { cin>>a[i]; b[i]=d; d++; } for(int i=1;i<=n-1;i++) { for(int j=i+1;j<=n;j++) { if(a[i]<a[j]) { swap(a[i],a[j]); swap(b[i],b[j]); } if(a[i]==a[j]&&b[i]>b[j]) { swap(b[i],b[j]); } } } for(int i=1;i<=n;i++) { cout<<b[i]<<" "<<b[i+1]<<endl; i++;
d开始为1
0