P1051 誰拿了最多獎學金 洛谷 (C++)(簡單模擬)
阿新 • • 發佈:2018-10-02
ctype efi 記錄 簡單模擬 clas style namespace .class int
根據題意模擬就好了,更新最大值,記錄下標。
(話說我也想要這麽多的獎學金啊..
#include <iostream> #include <cctype> #include <cstdio> #define ll long long using namespace std ; typedef struct{ string name ; ll end_grade ; ll class_grade ; char is_Stuleader ; char is_western ; ll number ; ll money ; }meassage ;int main(){ ll t ; cin >> t ; ll index = -1 ; ll maxx = -1 ; ll tot = 0 ; meassage meassage[105] ; for ( ll i = 0 ; i < t ; i ++ ){ meassage[i].money = 0 ; cin >> meassage[i].name >> meassage[i].end_grade >> meassage[i].class_grade >> meassage[i].is_Stuleader >> meassage[i].is_western >> meassage[i].number ;if ( meassage[i].end_grade > 80 && meassage[i].number >= 1 ){ meassage[i].money += 8000 ; } if ( meassage[i].end_grade > 85 && meassage[i].class_grade > 80 ){ meassage[i].money += 4000 ; } if ( meassage[i].end_grade > 90 ){ meassage[i].money+= 2000 ; } if ( meassage[i].is_western == ‘Y‘ && meassage[i].end_grade > 85 ){ meassage[i].money += 1000 ; } if ( meassage[i].is_Stuleader == ‘Y‘ && meassage[i].class_grade > 80 ){ meassage[i].money += 850 ; } tot += meassage[i].money ; if ( maxx < meassage[i].money ){ maxx = meassage[i].money ; index = i ; } } cout << meassage[index].name << endl << meassage[index].money << endl << tot ; return 0 ; }
P1051 誰拿了最多獎學金 洛谷 (C++)(簡單模擬)