杭电1004
来源:互联网 发布:算法与数据结构英文 编辑:程序博客网 时间:2024/06/03 20:19
输出最多的颜色
Input
Input contains multiple test cases. Each test case starts with a number N (0 < N <= 1000) – the total number of balloons distributed. The next N lines contain one color each. The color of a balloon is a string of up to 15 lower-case letters.
A test case with N = 0 terminates the input and this test case is not to be processed.
Output
For each case, print the color of balloon for the most popular problem on a single line. It is guaranteed that there is a unique solution for each test case.
Sample Input
5
green
red
blue
red
red
3
pink
orange
pink
0
Sample Output
red
pink
解法1:
# include <stdio.h> # include <string.h> int main(){ char st[1005][20]; int i,j,k,n,len,t; while(scanf("%d",&n),n){ for(i=0;i<n;i++){ scanf("%s",st[i]); } k = 0; t = 0; for(i=0;i<n;i++){ int j = i+1,cnt = 0 ; for(;j<n;j++){ if(strcmp(st[i],st[j])==0){ cnt++; } } if(cnt>t){ t = cnt; k = i; cnt = 0; } } printf("%s\n",st[k]); } return 0; }
解法2(map):
利用map(与java中treemap对应,,--- java的hashmap就是c++的unordered_map(无序)): # include <iostream> # include <map> # include <string> using namespace std; int main(){ int n,i,j; map<string,int> mapstr; string str; int max = 0; string ch; while(cin>>n,n){ max = 0; while(n--){ cin>>str; if(mapstr[str]==0){ mapstr[str] = 1; }else{ mapstr[str]++; } //只所以这样处理是因为map排序 if(mapstr[str]>max){ max = mapstr[str]; ch = str; } } cout<<ch<<endl; mapstr.clear(); } return 0; }
0 0
- 杭电1004
- 杭电1004题
- 杭电1004代码
- 杭电 1004
- 杭电 ACM 1004
- 杭电1004
- 杭电1004题
- 杭电1004
- 杭电1004
- 杭电ACM 1004
- 杭电oj-1004
- 杭电 1004
- 杭电1004
- 杭电1004题
- 杭电ACM 1004
- 杭电1004
- 杭电OJ 1004
- 杭电acm 1004
- Java基本数据类型
- Java学习总结--json
- android 外置数据库的使用
- android Toolbar使用
- matlab矩阵分块
- 杭电1004
- 全排列输出12345
- 互联网信息传输加密策略
- JS中setTimeout的作用域以及this的指向问题
- JAVA 访问控制修饰符
- 基于netty TCP server server主动给client 发消息解决方案
- ios应用加速审核通道
- iOS公司开发者账号申请详细教程
- Unity 计时器