#24813: 怎麼把前面學號放進去


es911080 (Jiahaw)

學校 : 基隆市私立二信高級中學
編號 : 142606
來源 : [1.162.173.56]
最後登入時間 :
2024-04-20 11:09:48
b158. NOIP2007 1.奖学金 -- NOIP2007普及組 | From: [203.204.15.63] | 發表日期 : 2021-03-27 22:11

#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;
}

 
#24824: Re:怎麼把前面學號放進去


p3a_owhj (阿普二信)

學校 : 不指定學校
編號 : 39897
來源 : [36.227.72.40]
最後登入時間 :
2024-05-18 07:34:55
b158. NOIP2007 1.奖学金 -- NOIP2007普及組 | From: [220.137.35.153] | 發表日期 : 2021-03-28 16:42

最好不要post原始AC碼, 提供解法的邏輯或想法即可

 
#24825: Re:怎麼把前面學號放進去


p3a_owhj (阿普二信)

學校 : 不指定學校
編號 : 39897
來源 : [36.227.72.40]
最後登入時間 :
2024-05-18 07:34:55
b158. NOIP2007 1.奖学金 -- NOIP2007普及組 | From: [220.137.35.153] | 發表日期 : 2021-03-28 16:54

最好不要post原始AC碼, 提供解法的邏輯或想法即可

好像是在問問題? 我搞錯了!
我的解法是建一個struct+自訂排序
例如建
struct stu
{
   int sum,chi,id; //和、文、號
}a[300];
bool cmp(stu &x, stu &y)
{
   //依規定排序
};
若還看不懂,請寄站內信給我

 
ZeroJudge Forum