#706. 换届选举

换届选举

题目描述

小玉暑假过后就升入五年级了。新的学期,班级要进行新的班长的选举。班级里一共有N位同学,假定班级里有M位候选人,编号分别为1、2、…、M。每位同学都可以在票上写出自己想投的某位候选人的编号,如果写1~M之外的整数则视为弃权票。现在投票结束了,请你编写程序统计并输出最终的当选者的编号。最终当选者应是所有人当中得票数最高的(保证得票最高者只会有一人),而且其票数不得低于班级总人数的三分之一。如果无人满足该条件,则输出编号0表示本轮投票无人当选。

输入格式

2 行。第 1 行为两个整数N和M,分别表示班级人数和候选人个数,用空格隔开;第 2 行为N个数字,分别表示每位同学想要投票当选班长的候选人的编号,数与数之间用空格隔开。(3<=M<10, 10<N<=100)

输出格式

2行。第1行为m个数字,分别表示每位候选人的得票数,用空格隔开。第2行为一个整数,表示最终当选班长的候选人的编号,如果无人当选,则输出0。

样例

输入#1

10  4
1  5  4  3  4  2  1  4  2  4

输出#1

2 2 1 4
4

数据范围/约定

时间空间限制:1s, 256MB.