《ACM程式設計》書中題目 O

2021-07-29 03:46:29 字數 1136 閱讀 8158

題目簡要:

這道題是一道尋找出現最多次的氣球顏色的問題。

比賽時間了! 多麼激動,看到氣球漂浮。 但是告訴你乙個秘密,法官最喜歡的時間是猜測最流行的問題。 當比賽結束後,他們會計算每種顏色的氣球,並找到結果。

今年,他們決定離開這個可愛的工作給你。

輸入包含多個測試用例。 每個測試用例以數字n(0

例如:

sample input5

green

redblue

redred 3

pink

orange

pink

0

sample output

red

pink

解題思路:

其實我這道題的解題思路貌似是有些複雜了,我想的是先用string輸入,再用vector找出每一種顏色,再用multiset的count處理數量的問題,最終找出出現最多的顏色。

然而,一開始我的vector用的是c[n],以至於出現了好幾次分段錯誤,但是將陣列改為動態後問題就解決了。

附**:

#include

using

namespace std

;int

main()b

[n];

vector

>c

;multiset

>s

;k=0

;for

(i =0;i

;i++)

else

for(j

=0;j ;j

++)}}

for(i

=0;i ;i

++)for(i

=0;i ;i

++)for(i

=0;i ;i

++)}cout

<[m

]<;s

.clear

();c

.clear

();}

return0;

} 解題感受:

分段錯誤,我專門上網查了出現分段錯誤的原因,但是雖然問題解決了,可我並不是很明確到底是因為什麼出現的分段錯誤。將陣列由靜態改為動態也完全是試試看的態度,我想我還應該更細緻地去查一下原因。話說,這種題用stl做的確比用以前c的知識要簡單許多。

ACM書中題目 O

一.若干組氣球 找出顏色最多的氣球。二.首先要想如何儲存這些char型字串,然後需要計算每一組相同的字串 顏色 並將最大的數所對應的顏色輸出,用迴圈。這道題我用的是vector和string,進行比較字串用的compare。三 include include include include usin...

ACM書中題目 O

題目要求 輸入行數,每行輸入氣球顏色,輸出出現次數最多的顏色,輸入0終止輸入。題目思路 定義qiqiu資料型別包含兩個元素,利用while迴圈向字元陣列中輸入氣球顏色,比較每個數字中的字元,若相同則與此字元陣列所對應的整數陣列加1。比較整數陣列大小,輸出最大陣列所對應的字元陣列。細節處理 利用str...

《ACM程式設計》書中題目 J

題目簡要 輸入從乙個整數n 這是要跟隨的字串數。以下n行每個包含乙個最多50個大寫字母的字串。對於輸入中的每個字串,首先輸出字串的編號,列印字串start是從輸入字串匯出的,每次都替換為字母表中的以下字母,並用 a 替換 z 在每個測試用例後列印空白行。例如 sample input 2hal sw...