蒜頭君來蒜廠面試的時候,曾經遇到這樣乙個面試題:
給定 n
nn 個整數,求裡面出現次數最多的數,如果有多個重複出現的數,求出值最大的乙個。當時可算是給蒜頭君難住了。現在蒜頭君來考考你。
輸入格式
第一行輸入乙個整數 n(1
≤n
≤100000
)n(1 \le n \le 100000)
n(1≤n≤
1000
00),接下來一行輸入 n
nn 個 int 範圍內的整數。
輸出格式
輸出出現次數最多的數和出現的次數,中間用乙個空格隔開,如果有多個重複出現的數,輸出值最大的那個。
樣例輸入
1 1 2 3 4樣例輸出
1 2樣例輸入
9 10 27 4 9 10 3 1 2 6樣例輸出
10 2**:解:
#include
"iostream"
#include
"map"
#include
"algorithm"
using
namespace std;
intmain()
else a[temp]=1
;}int max_first=
0,max_second=0;
for(map<
int,
int>
::iterator it=a.
begin()
;it!=a.
end(
);it++)if
(it-
>second>=max_second&&it-
>first>=max_first)
cout<" "
}
計蒜客 蒜頭君倒水
問題描述 蒜頭君倒了 2 杯熱水在杯子裡面,第一杯裡面有 a 毫公升,第二杯裡面有 b 毫公升。水太熱了,蒜頭君決定通過輪流倒水的方式來讓水冷下來。每次倒水蒜頭君把第一杯的 x 的水倒入第二杯,把第二杯的 y 的水倒入第一杯 蒜頭君有奇特的方法,能讓這一過程是同是發生的,沒有先後之分 蒜頭君一直重複...
計蒜客 蒜頭君回家
樣例輸入 8 10 p.p t s 樣例輸出 思路用兩次bfs,第一次計算出起點到p的距離,第二次計算出t到p的距離,然後迴圈取最小值。但是wa了很多次,找了很久,發現是vis判斷的問題,導致乙個資料更新多次。ac include include include include using name...
計蒜客 蒜頭君學英語
蒜頭君快要考托福了,這幾天,蒜頭君每天早上都起來記英語單詞。花椰妹時不時地來考一考蒜頭君 花椰妹會詢問蒜頭君乙個單詞,如果蒜頭君背過這個單詞,蒜頭君會告訴花椰妹這個單詞的意思,不然蒜頭君會跟花椰妹說還沒有背過。單詞是由連續的大寫或者小寫字母組成。注意單詞中字母大小寫是等價的。比如you和you是乙個...