201312-1- 出现次数最多的数
生活随笔
收集整理的這篇文章主要介紹了
201312-1- 出现次数最多的数
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
題目:
問(wèn)題描述 給定n個(gè)正整數(shù),找出它們中出現(xiàn)次數(shù)最多的數(shù)。如果這樣的數(shù)有多個(gè),請(qǐng)輸出其中最小的一個(gè)。 輸入格式 輸入的第一行只有一個(gè)正整數(shù)n(1 ≤ n ≤ 1000),表示數(shù)字的個(gè)數(shù)。輸入的第二行有n個(gè)整數(shù)s1, s2, …, sn (1 ≤ si ≤ 10000, 1 ≤ i ≤ n)。相鄰的數(shù)用空格分隔。 輸出格式 輸出這n個(gè)次數(shù)中出現(xiàn)次數(shù)最多的數(shù)。如果這樣的數(shù)有多個(gè),輸出其中最小的一個(gè)。 樣例輸入 6
10 1 10 20 30 20 樣例輸出 10 —————————————————————————————————————————————————————— 這道題使用 map 即可? (? ? 容量大小不用事先聲明 ,初始值默認(rèn)為0? ) 1 #include<stdio.h> 2 #include<iostream> 3 #include<vector> 4 #include<map> 5 6 using namespace std; // 7 8 int main() 9 { 10 map<int,int>m; // 如果不指定大小 ?? 11 int n; 12 cin>>n; 13 14 vector<int>val; 15 16 // m[2] = 2; 17 // m[1] = 4; 18 // 19 // for (map<int,int>::iterator it = m.begin();it!=m.end();it++) ///map 如何 迭代器取值 20 // { 21 // cout<<it->first<<" "<<it->second<<endl; 22 // } 23 24 for (int i=0;i<n;i++) 25 { 26 int v; 27 cin>>v; 28 m[v]++; 29 30 val.push_back(v); 31 } 32 33 int ans; 34 int cnt=0; 35 36 // for (int i=0;i<m.size();i++) 37 // { 38 // 39 // int tmp = val[i]; 40 // int tmp_cnt = m[tmp]; 41 // 42 // if (tmp_cnt>cnt) 43 // { 44 // cnt = tmp_cnt; 45 // ans = 46 // } 47 // } 48 49 50 for (map<int,int>::iterator it = m.begin();it!=m.end();it++) ///map 如何 迭代器取值 51 { 52 int tmp = it->second; 53 if (tmp>cnt) 54 { 55 cnt = tmp; 56 ans = it->first; 57 } 58 } 59 60 cout<<ans; 61 62 return 0; 63 }
?
轉(zhuǎn)載于:https://www.cnblogs.com/wuxiaotianC/p/9503760.html
《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的201312-1- 出现次数最多的数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: LeetCode:跳跃游戏【55】
- 下一篇: python中的argparse包——用