给定一个整数序列,确定这个序列中出现次数最多的整数和它出现的次数
2013-07-31 16:13
344 查看
题目描述
对于给定一个整数序列,你的任务是确定这个序列中出现次数最多的整数和它出现的次数。输入
输入包含多组测试数据,每组数据的第一行为一个整数 N(0 < N <= 1000),接下来一行为 N 个以空格分隔的整数 Ai,|Ai| < 2^31。输出
对于每组测试数据,输出只有一行为两个空格分隔的整数A、B,分别代表出现次数最多的那个数和出现次数,如果出现次数最多的有多个,输出数值最小的那个。示例输入
4 1 2 3 3 5 1 2 3 4 5
示例输出
3 2 1 1
1 #include<stdio.h> 2 struct vode 3 { 4 int date; 5 int cs; 6 }f[10000],t; 7 int main() 8 { 9 int i,n,j; 10 while(~scanf("%d",&n)) 11 { 12 for(i=1;i<=10000;i++) 13 f[i].cs=0; 14 for(i=1;i<=n;i++) 15 scanf("%d",&f[i].date); 16 for(i=n;i>=1;i--) 17 { 18 for(j=1;j<=i;j++) 19 if(f[i].date==f[j].date) 20 f[j].cs++; 21 } 22 for(i=1;i<=n-2;i++) 23 for(j=i+1;j<=n-1;j++) 24 if(f[i].date>f[j].date) 25 { 26 t=f[i]; 27 f[i]=f[j]; 28 f[j]=t; 29 } 30 for(i=1;i<=n-2;i++) 31 for(j=i+1;j<=n-1;j++) 32 if(f[i].cs<f[j].cs) 33 { 34 t=f[i]; 35 f[i]=f[j]; 36 f[j]=t; 37 } 38 printf("%d %d\n",f[1].date,f[1].cs); 39 } 40 }
View Code
相关文章推荐
- 给定一个字符串,找出这个字符串中出现最多的字符和次数
- 给定一个整数数组,其中元素的取值范围为0到10000,求其中出现次数最多的数
- 给定一个整数数组,其中元素的取值范围为0到10000,求其中出现次数最多的数
- 给定一个整数序列,请找出这个整数序列的中间数的值。
- 现在有一个整数数组,已知一个数出现的次数超过了一半,请用O(n)的复杂度的算法找出这个数
- 给定一个十进制正整数N,求出从1开始,到N的所有整数,数字1出现的次数(java实现)
- 给定一个整数序列,请找出这个整数序列的中间数的值。
- 给定一个固定长度的数组,将递增整数序列写入这个数组。当写到数组尾部时,返回数组开始重新写,并覆盖先前写过的数,请在这个特殊数组中找出给定的整数
- 现在有一个整数数组,已知一个数出现的次数超过了一半,请用O(n)的复杂度的算法找出这个数
- 判断一个字符串中出现次数最多的字符,统计这个次数
- 一个字符串str="fsdafdsaf" 任意个字符,求出这个字符串中出现次数最多的字符和出现的次数
- 给定一个整数序列,请找出这个整数序列的中间数的值。
- hdu 1806 Frequent values(给定一个非降序数组,求任意区间内出现次数最多的数的次数)
- *数组-10. 求整数序列中出现次数最多的数
- 判断一个字符串中出现次数最多的字符,统计这个次数
- 判断一个字符串中出现次数最多的字符,并统计这个次数
- 5-29 求整数序列中出现次数最多的数 (15分)
- 求整数序列中出现次数最多的数
- 现在有一个整数数组,已知一个数出现的次数超过了一半,请用O(n)的复杂度的算法找出这个数
- 判断一个字符串中出现次数最多的字符,统计这个次数