#33534: c++ 幼幼班解法


mak1288@go.edu.tw (12楊燈福)

學校 : 國立北港高級中學
編號 : 220452
來源 : [210.60.206.123]
最後登入時間 :
2023-03-31 10:37:04
j605. 1. 程式考試 -- 2023年1月APCS | From: [101.137.251.214] | 發表日期 : 2023-01-12 00:28

#include <bits/stdc++.h>

using namespace std;

int main()
{
    int k;
    int ans = 0;
    int err = 0;
    int temp = 0;
    int temp1 = 0;
    cin>> k;
    cout<<endl;
    //創造一個k*2的矩陣,一行存取時間點另一存取原始分數

    int grade[k][2];
    for(int i=0;i<k;i++){
        cin>>grade[i][0];
        cin>>grade[i][1];
        cout<<endl;
    }
    //計算有幾次嚴重失誤
    for(int i=0;i<k;i++){
        if(grade[i][1]== -1)
            err++;
    }
    //排序原始分數(降冪排序
    for(int i=0 ;i<k-1;i++){
        for(int j=0;j<k;j++){
            if(grade[j][1]<grade[j+1][1]){
                temp = grade[j+1][1];
                grade[j+1][1] = grade[j][1];
                grade[j][1] = temp;
                temp1 = grade[j+1][0];
                grade[j+1][0] = grade[j][0];
                grade[j][0] = temp1;
            }
        }
    }
    //輸出最大值
    ans = grade[0][1] - k - (err*2);
    if (ans<0)
        cout<<0<<" "<<grade[0][0];
    else
        cout<<ans<<" "<<grade[0][0];
    return 0;
}

 
ZeroJudge Forum