【发布时间】:2015-05-28 05:41:55
【问题描述】:
我正在尝试通过 codeabbey.com 上的问题自学编程。
我在this question 上没有得到正确的输出。
问题: 这是一个长度为 M 的数组,其数字在 1 ... N 范围内,其中 N 小于或等于 20。您将通过它并计算每个数字遇到的次数。
输入数据在第一行包含 M 和 N。 第二行(相当长)将包含由空格分隔的 M 个数字。 答案应该正好包含 N 个值,用空格分隔。首先应该给出 1-s 的数量,第二个 - 2-s 的数量等等。
数据输入:
10 3
1 2 3 2 3 1 1 1 1 3
正确的输出:
5 2 3
我的输出:
7 3 4
您可以查看here
我的代码:
#include <iostream>
using namespace std;
int main()
{
int arrayLength,range,a;
cin>>arrayLength>>range;
int array[20];
array[20]={0};
for(int i=0; i<arrayLength; i++)
{
cin>>a;
++array[a-1];
}
for(a=0; a<range; a++)
{
cout<<array[a]<<" ";
}
return 0;
}
没有任何错误消息或警告。另外,如果您对改进代码有任何建议,那就太好了。
【问题讨论】: