js算法题,帮看看thanks
问题描述:
第1行中给出一个正整数n(不超出1000),表示菜品的数量,每个菜品使用1~n进行编号。 第2行输入若干以空格间隔的正整数,表示客人投出的最喜爱的菜品编号,以键盘结束符^Z或文件结束符结束输入。
输出格式:
每行输出一个最受欢迎的菜品编号和得票数。 菜品编号和得票数间隔1个空格。如果有并列的最受欢迎的菜品,则按编号从小到大的顺序输出每一个菜品,每个菜品占一行。
输入样例:
10
6 8 5 8 9 3 6 6 8 2 1 4 7 2 8 3 8 9 6 3 8 10 6 6
结尾无空行
输出样例:
6 6
8 6
答
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
</head>
<body>
<script type="text/javascript">
var inputnum = window.prompt("请输入菜品数量:");
var inputdata = window.prompt("请投出的最喜爱的菜品编号(以空格间隔):");
var list = [];
for (i = 1; i <= inputnum; i++) {
list.push({ id: i, count: 0 });
}
console.log(list.length);
var data = inputdata.split(' ');
for (i = 1; i <= data.length; i++) {
for (j = 0; j < list.length; j++) {
if (list[j].id == data[i]) {
list[j].count++;
}
}
}
var text = '输出结果:\n';
for (i = 0; i < list.length; i++) {
if (list[i].count!=0) {
text += list[i].id+' ' + list[i].count+'\n';
}
}
alert(text);
</script>
</body>
</html>
答
这道题变相的问你一串数字中出现最多的数字和出现次数,