SDUT ACM 1710 眾數問題

2021-09-28 23:03:07 字數 878 閱讀 9400

time limit: 2000 ms memory limit: 65536 kib

problem description

給定含有n個元素的多重集合s,每個元素在s**現的次數稱為該元素的重數。多重集s中重數最大的元素稱為眾數。例如,s=。多重集s的眾數是2,其重數為3。對於給定的由n 個自然數組成的多重集s,計算s的眾數及其重數。如果出現多個眾數,請輸出最小的那個。

input

輸入資料的第1行是多重集s中元素個數n(n<1300000);接下來的n行中,每行有乙個最多含有5位數字的自然數,。

output

輸出資料的第1行給出眾數,第2行是重數。

sample input61

2223

5sample output23

#include

using

namespace std;

bool

cmp(

const pair<

int,

int> a,

const pair<

int,

int>b)

intmain()

map<

int,

int>

::iterator ite =

max_element

(q.begin()

,q.end()

,cmp)

; cout<>first<<

"\n"

<>second

}

sdutacm 區間覆蓋問題

區間覆蓋問題 timelimit 1000ms memory limit 65536kb submit statistic problem description 用 i來表示 x座標軸上座標為 i 1,i 的長度為 1的區間,並給出n 1 n 200 個不同的整數,表示 n個這樣的區間。現在要求畫...

演算法 眾數問題

眾數問題 description 給定含有n個元素的多重集合s,每個元素在s中出現的次數稱為該元素的重數。多重 集s中重數最大的元素稱為眾數。例如,s 多重集s的眾數是2,其重數為3。程式設計任務 對於給定的由n 個自然數組成的多重集s,程式設計計算s 的眾數及其重數。input 輸入資料第1行多重...

眾數問題分析

問題描述 給定乙個陣列,找出其中出現次數最多的那個元素 即眾數 核心思想 普遍的解決思路。如果我們將所有元素的出現次數進行統計,並從中找出次數中的最大值,那麼,這個最大值對應的元素就是眾數。從這一思想出發,我總結出以下兩種演算法 演算法1 利用排序演算法統計 演算法2 利用陣列或雜湊表統計 演算法1...