引言:CSP(http://www.cspro.org/lead/application/ccf/login.jsp是由中国计算机学会(CCF)发起的“计算机职业资格认证”考试,针对计算机软件开发、软件测试、信息管理等领域的专业人士进行能力认证。认证对象是从事或将要从事IT领域专业技术与技术管理人员,以及高校招考研究生的复试对象。

问题描述

  给定n个正整数,找出它们中出现次数最多的数。如果这样的数有多个,请输出其中最小的一个。

输入格式

  输入的第一行只有一个正整数n(1 ≤ n ≤ 1000),表示数字的个数。

  输入的第二行有n个整数s1, s2, …, sn (1 ≤ si ≤ 10000, 1 ≤ i ≤ n)。相邻的数用空格分隔。

输出格式

  输出这n个次数中出现次数最多的数。如果这样的数有多个,输出其中最小的一个。

样例输入

6

10 1 10 20 30 20

样例输出

10

源代码

# include <stdio.h>

# include <stdlib.h>

# include <memory.h>

struct storage{

int key;

int value;

};

int main(void)

{

int n;  //个数

int time = 0;

int flag = 1;

scanf("%d", &n);

int *input = (int *)malloc(sizeof(int)*n);

memset(input, 0, sizeof(int)*n);

struct storage *handle = (struct storage *)malloc(sizeof(struct storage)*n);

memset(handle, 0, sizeof(struct storage)*n);

int i, j;

for (i = 0; i < n; i++)

{

scanf("%d", input+i);

}

for (i = 0; i < n; i++)

{

for (j = 0; j < time; j++)

{

if (input[i] == handle[j].key)

{

handle[j].value += 1;

flag = 0;

break;

}

}

if (flag)

{

handle[time].key = input[i];

handle[time].value = 1;

time += 1;

}

flag = 1;

}

int max = 0;

int result = 0;

for (i = 0; i < time; i++)

{

if (handle[i].value > max)

{

max = handle[i].value;

result = handle[i].key;

}

if (handle[i].value == max)

{

if (result > handle[i].key)

{

max = handle[i].value;

result = handle[i].key;

}

}

}

free(input);

free(handle);

printf("%d\n", result);

return 0;

}

最新文章

  1. BZOJ 3894: 文理分科 [最小割]
  2. openresty 前端开发入门三之JSON篇
  3. MySQL Workbench中修改表字段字符集
  4. 使用ASP.Net WebAPI构建REST服务(五)——客户端
  5. (转载)目前最细致清晰的NSDictionary以及NSMutableDictionary用法总结
  6. Java学习笔记——switch语句的参数类型
  7. Qt 学习第一步 做计划和确定目标
  8. ORA-12154 TNS无法解析指定的连接标识符
  9. Java多线程初学者指南(9):为什么要进行数据同步
  10. Activity声明周期容易出现的问题
  11. 基于winform的二进制图片数据的存取(用于数据库照片的读写处理)
  12. (大数据工程师学习路径)第三步 Git Community Book----基本用法(下)
  13. debug运行可以,release运行报错的原因及修改方法
  14. ssh的action校验内容输出
  15. LIght OJ 1179
  16. 1安装Linux
  17. vue-cli3+cordova实现app混合开发
  18. Codeforces Round #288 (Div. 2) C. Anya and Ghosts 模拟 贪心
  19. 【LOJ】#6289. 花朵
  20. QUIC协议

热门文章

  1. http://blog.csdn.net/hhhccckkk/article/details/9313999
  2. Python程序的执行原理(转)
  3. JQuery 禁用后退按钮
  4. Python 学习笔记(四)数字(二)
  5. Xadmin使用二
  6. Linux系统修改/etc/sysconfig/i18n文件,桌面无法正常显示
  7. MySQL在同一表格里把字段值(value)给另一字段(name)
  8. 如何改变memcached默认的缓存时间?
  9. PHP 进阶篇:面向对象的设计原则,自动加载类,类型提示,traits,命名空间,spl的使用,反射的使用,php常用设计模式 (麦子学员 第三阶段)
  10. 基于OMAPL:Linux3.3内核的编译