7 12 樹種統計 25 分

2021-09-29 19:28:43 字數 1915 閱讀 9835

隨著衛星成像技術的應用,自然資源研究機構可以識別每一棵樹的種類。請編寫程式幫助研究人員統計每種樹的數量,計算每種樹佔總數的百分比。

輸入首先給出正整數n(≤105

10^10

5​​),隨後n行,每行給出衛星觀測到的一棵樹的種類名稱。種類名稱由不超過30個英文本母和空格組成(大小寫不區分)。

按字典序遞增輸出各種樹的種類名稱及其所佔總數的百分比,其間以空格分隔,保留小數點後4位。

29

red alder

ashaspen

basswood

ashbeech

yellow birch

ashcherry

cottonwood

ashcypress

red elm

gumhackberry

white oak

hickory

pecan

hard maple

white oak

soft maple

red oak

red oak

white oak

poplan

sassafras

sycamore

black walnut

willow

ash 13.7931%

aspen 3.4483%

basswood 3.4483%

beech 3.4483%

black walnut 3.4483%

cherry 3.4483%

cottonwood 3.4483%

cypress 3.4483%

gum 3.4483%

hackberry 3.4483%

hard maple 3.4483%

hickory 3.4483%

pecan 3.4483%

poplan 3.4483%

red alder 3.4483%

red elm 3.4483%

red oak 6.8966%

sassafras 3.4483%

soft maple 3.4483%

sycamore 3.4483%

white oak 10.3448%

willow 3.4483%

yellow birch 3.4483%

正解是按字典序中序遍歷二叉搜尋樹並輸出

由於測試點太水了,按字典序排序後遍歷即可

#include

#include

#include

#define test 1

int num[

200000];

struct nodesed[

100050];

intcmp

(const

void

*a,const

void

*b);

intmain()

double cnt =

0.0;

qsort

(sed, t,

sizeof

(struct node)

, cmp)

;for

(int i =

0; i < t; i++)if

(i == t -1||

strcmp

(sed[i]

.s, sed[i+1]

.s)!=0)

}#else

char a[30]

;scanf

("%[^\n]%*c"

, a)

;puts

(a);

#endif

return0;

}

7 24 樹種統計(25 分)

7 24 樹種統計 25 分 隨著衛星成像技術的應用,自然資源研究機構可以識別每一棵樹的種類。請編寫程式幫助研究人員統計每種樹的數量,計算每種樹佔總數的百分比。輸入首先給出正整數n 1 0 5 隨後n行,每行給出衛星觀測到的一棵樹的種類名稱。種類名稱由不超過30個英文本母和空格組成 大小寫不區分 按...

7 24 樹種統計(25 分)

7 24 樹種統計 25 分 隨著衛星成像技術的應用,自然資源研究機構可以識別每一棵樹的種類。請編寫程式幫助研究人員統計每種樹的數量,計算每種樹佔總數的百分比。輸入首先給出正整數n 1 0 5 隨後n行,每行給出衛星觀測到的一棵樹的種類名稱。種類名稱由不超過30個英文本母和空格組成 大小寫不區分 按...

7 24 樹種統計 (25 分)

隨著衛星成像技術的應用,自然資源研究機構可以識別每一棵樹的種類。請編寫程式幫助研究人員統計每種樹的數量,計算每種樹佔總數的百分比。輸入首先給出正整數n 10 5 隨後n行,每行給出衛星觀測到的一棵樹的種類名稱。種類名稱由不超過30個英文本母和空格組成 大小寫不區分 按字典序遞增輸出各種樹的種類名稱及...