#include <bits/stdc++.h>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char** argv) {
int n;
while (cin >>n){
int point[n],a[n],b[n],c[n],order[n];
for (int i=1;i<=n;++i){
cin >>a[i]>>b[i]>>c[i];
point[i]=a[i]+b[i]+c[i];
}
for (int j=1;j<=n;++j){
order[j]=j;
for (int k=j+1;k<=n;++k){
if (point[k] > point[j]){
order[j-1]=k;
swap (point[k] , point[j]);
}
if (point[k] == point[j] and a[k]>a[j]){
order[j]=k;
swap (point[k] , point[j]);
}
}
}
for (int l=1;l<=5;++l){
cout <<order[l]<<" "<<point[l]<<endl;
}
cout <<endl;
}
return 0;
}
最好不要post原始AC碼, 提供解法的邏輯或想法即可
最好不要post原始AC碼, 提供解法的邏輯或想法即可
好像是在問問題? 我搞錯了!
我的解法是建一個struct+自訂排序
例如建
struct stu
{
int sum,chi,id; //和、文、號
}a[300];
bool cmp(stu &x, stu &y)
{
//依規定排序
};
若還看不懂,請寄站內信給我