牛客練習賽15

2021-08-18 18:24:14 字數 2587 閱讀 2502

時間限制:c/c++ 2秒,其他語言4秒

空間限制:c/c++ 262144k,其他語言524288k

64bit io format: %lld

第一次期中考終於結束啦!沃老師是個語文老師,他在評學生的作文成績時,給每位學生的分數都是乙個小於10的非負小數。

amy 8.999999999999999999999999999999999999999990000

bob 8.9999999999999999999999999999999999999999800

cat 8.9999999999999999999999999999999999999999899999999

沃老師並不會告訴大家分數的排名,但學生間競爭激烈,大家都想知道自己的作文成績在班上的排名。

但由於作文分數的小數部分可能超級長,難以用肉眼比較兩個數的大小關係,請你幫忙寫個程式,把所有學生按照作文分數排序吧〜

輸入共有n + 1行。

第一行有乙個正整數n,代表班上有幾個人。

接下來n行中的第i行,包含乙個字串namei,以及乙個小數scorei,分別代表第i個人的名字以及第i個人的作文得分。

輸出總共n行,每行由乙個名字和乙個小數構成,第i行代表著分數第i高的人的名字以及他的作文得分,代表作文得分的小數必須和輸入一模一樣,也就是原本末尾有多少零,輸出也要有相同數量的零。

若分數相同,則名字字典序比較小的放在前面。

示例1

3

amy 8.999999999999999999999999999999999999999990000

bob 8.9999999999999999999999999999999999999999800

cat 8.9999999999999999999999999999999999999999899999999

amy 8.999999999999999999999999999999999999999990000

cat 8.9999999999999999999999999999999999999999899999999

bob 8.9999999999999999999999999999999999999999800

示例2

6

aa1 3.

bb2 2.

cc3 1.

a 5.

a 5.0

9 5.00

9 5.00

a 5.0

a 5.

aa1 3.

bb2 2.

cc3 1.

請仔細觀察這樣例輸入中的最後三行,雖然小數部分末尾0的數目不一樣,但他們三個人都是同分的,所以必須按照名字字典序輸出。

示例3

10

peter50216 5.0216

kelvin 9.9999999990

seanwu 9.999999999

pp5438 5.438

csferng1021 1.021

tmt514 5.140

dreamoon 0.00000000

shik 9.999999999

l521530 5.21530

coquelicot 9.999999999000000000

coquelicot 9.999999999000000000

kelvin 9.9999999990

seanwu 9.999999999

shik 9.999999999

pp5438 5.438

l521530 5.21530

tmt514 5.140

peter50216 5.0216

csferng1021 1.021

dreamoon 0.00000000

此樣例上出現的這些 id 是代表台灣大學參加 2010~2014 年五屆 icpc world final 的選手唷!當中只有廢物 dreamoon 沒在 world final 拿過金牌~

score

i視為字串,所有score

i的長度總和≤6×10

5這道題題目再次讓我感受到了我知識的淺薄,第一次使用string,cin,cout,還有stable_sort(),要是不用stable_sort()會超時,反正我模仿別人寫的的確是這樣的,用c的字串去寫真的是難得讓我難受!!!

#include#include#include#include#include#includeusing namespace std;

struct node

a[200009];

int cmp(node a,node b)

if(la>lb)

}else if(la>n;

for(i=0; i<=n-1; i++)

stable_sort(a,a+n,cmp);

for(i=0; i<=n-1; i++)

return 0;

}

牛客網練習賽15 B

include includeusing namespace std define ll long long define inf 1e 5 const int inv2 500000004 const int inf 2147483647 const int max 100010 const in...

牛客練習賽9

時間限制 c c 1秒,其他語言2秒 空間限制 c c 32768k,其他語言65536k 64bit io format lld 珂朵莉想每天都給威廉送禮物,於是她準備了n個自己的本子 她想送最多的天數,使得每天至少送乙個本子,但是相鄰兩天送的本子個數不能相同 珂朵莉最多送幾天禮物呢 第一行乙個整...

牛客練習賽5

給你n個正整數,n 5,每個正整數大小不超過1000,最初su m 0 sum 0 每次可將su m sum 按順序加上陣列中的數,加完之後可以對sum的數字進行全排列,求最終能達到的最大值。由於n只有5,所以按照題意模擬dfs實現就可以了,注意最後一組也可以按數字進行全排列。d題 include ...