#include
#include
#include
#include
#include
#include
using
namespace std;
struct node
;bool
cmp(
const node &a,
const node &b)
intmain()
for(
int i =
0; i < m; i++
)for
(int i =
0; i < n; i++
) vector v;
for(
auto it : m1)
if(gg >=60)
v.push_back()
;}sort
(v.begin()
, v.
end(
), cmp)
;for
(int i =
0; i < v.
size()
; i++
)printf
("%s %d %d %d %d\n"
, v[i]
.name.
c_str()
, v[i]
.gp, v[i]
.gmid, v[i]
.gfin, v[i]
.gg)
;return0;
}
最後乙個測試點沒過,推測是因為記憶體溢位,看了下這個**需要6000多,而網上通過的用了3000多。參考了柳諾的**,思路差不多,我用了3個map存資料相互比對完後再裝入vector,她用了乙個map存序號,將資料直接存入vector,因此減少使用了空間。
#include
#include
#include
#include
#include
using
namespace std;
struct node
;bool
cmp(
const node &a,
const node &b)
intmain()
);}}
for(
int i =
0; i < m; i++
)for
(int i =
0; i < n; i++)}
for(
int i =
0; i < v.
size()
; i++)if
(v[i]
.gg >=
60) ans.
push_back
(v[i]);
sort
(ans.
begin()
, ans.
end(
), cmp)
;for
(int i =
0; i < ans.
size()
; i++
)printf
("%s %d %d %d %d\n"
, ans[i]
.name.
c_str()
, ans[i]
.gp, ans[i]
.gmid, ans[i]
.gfin, ans[i]
.gg)
;return0;
}
1080 MOOC期終成績
最後乙個測試點 6分 如果有的成績不存在 例如某人沒參加期中考試 則在相應的位置輸出 1 如果有的成績為0,則相應的位置應該輸出的是 0 注意不要也輸出成 1 了 額外輸入樣例 2 2 2 aaa 0 bbb 200 aaa 0 bbb 0 aaa 0 bbb 60 正確的輸出樣例 bbb 200 ...
PAT乙級 1080 MOOC期終成績
列印出獲得合格證書的學生名單。每個學生佔一行,格式為 學生學號 gp g mid term gfinal g 如果有的成績不存在 例如某人沒參加期中考試 則在相應的位置輸出 1 輸出順序為按照總評分數 四捨五入精確到整數 遞減。若有並列,則按學號遞增。題目保證學號沒有重複,且至少存在1個合格的學生。...
1080 MOOC期終成績 25分
現在的問題是,每次考試都產生一張獨立的成績單。本題就請你編寫程式,把不同的成績單合為一張。輸入格式 輸出格式 列印出獲得合格證書的學生名單。每個學生佔一行,格式為 學生學號gp gmid term gfinalg 如果有的成績不存在 例如某人沒參加期中考試 則在相應的位置輸出 1 輸出順序為按照總評...