問題 奧運排序問題

2021-08-20 09:16:21 字數 1088 閱讀 6389

題目描述

按要求,給國家進行排名。

輸入有多組資料。

第一行給出國家數n,要求排名的國家數m,國家號從0到n-1。

第二行開始的n行給定國家或地區的奧運金牌數,獎牌數,人口數(百萬)。

接下來一行給出m個國家號。

輸出排序有4種方式: 金牌總數 獎牌總數 金牌人口比例 獎牌人口比例

對每個國家給出最佳排名排名方式 和 最終排名

格式為: 排名:排名方式

如果有相同的最終排名,則輸出排名方式最小的那種排名,對於排名方式,金牌總數 < 獎牌總數 < 金牌人口比例 < 獎牌人口比例

如果有並列排名的情況,即如果出現金牌總數為 100,90,90,80.則排名為1,2,2,4.

每組資料後加乙個空行。

樣例輸入

4 44 8 1

6 6 2

4 8 2

2 12 4

0 1 2 3

4 28 10 1

8 11 2

8 12 3

8 13 4

0 3樣例輸出

1:31:1

2:11:2

1:11:1

提議描述:

給出幾個國家的各項資料,然後按要求輸出幾個國家的最優排名以及排名方式。

結題思路:

直接就是將每個國家按要求的四個排序方式全部排序一遍,將每個國家的排名和排名方式記錄下來,每排序一次都需要跟新排名以及排名方式,然後在輸出要求的幾個國家就行。

注意事項:

因為每種排名方式的先後級不一樣,所以在進行排序時要注意更新。在排序的時候要按照題目要求的排序方式,例如100,90,90,80.則排名為1,2,2,4.。還有輸出格式比較坑,要注意每個樣例後要輸出乙個空行。

程式**:

#include

#include

struct stu

;int main()

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

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

}for(i=1;i<=n;i++)}}

puts("");

}return 0;

}

奧運排序問題

時間限制 1 sec 記憶體限制 32 mb 按要求,給國家進行排名。有多組資料。第一行給出國家數n,要求排名的國家數m,國家號從0到n 1。第二行開始的n行給定國家或地區的奧運金牌數,獎牌數,人口數 百萬 接下來一行給出m個國家號。排序有4種方式 金牌總數 獎牌總數 金牌人口比例 獎牌人口比例 對...

奧運排序問題

按要求,給國家進行排名。輸入描述 有多組資料。第一行給出國家數n,要求排名的國家數m,國家號從0到n 1。第二行開始的n行給定國家或地區的奧運金牌數,獎牌數,人口數 百萬 接下來一行給出m個國家號。輸出描述 排序有4種方式 金牌總數 獎牌總數 金牌人口比例 獎牌人口比例 對每個國家給出最佳排名排名方...

奧運排序問題

題目描述 按要求,給國家進行排名。輸入有多組資料。第一行給出國家數n,要求排名的國家數m,國家號從0到n 1。第二行開始的n行給定國家或地區的奧運金牌數,獎牌數,人口數 百萬 接下來一行給出m個國家號。輸出排序有4種方式 金牌總數 獎牌總數 金牌人口比例 獎牌人口比例 對每個國家給出最佳排名排名方式...