发布网友 发布时间:2024-10-19 19:11
共4个回答
热心网友 时间:2024-10-24 07:06
下面有提示的,数据量大,scanf printf是必须的,cin cout比较慢,读入大量数据的时候会超时的,你的算法没问题。我只把你的输入输出改了就ac了。
#include <iostream>
using namespace std;
int main()
{
int n, i, a[1000], m, d;
int *p ;
while (scanf("%d",&n)) {
if ( n == 0) {
return 0;
}
for ( i = 0; i < n; i++) {
scanf("%d",&a[i]);
}
//cin >> a;
scanf("%d",&m);
d = 0;
for ( i = 0; i < n; i++) {
if ( a[i] == m) {
d++;
}
}
printf("%d\n",d);
}
}
热心网友 时间:2024-10-24 07:07
#include <iostream>
using namespace std;
int a[101]; //每个分数对应的学生人数
int main()
{
int n, k;
while(scanf("%d",&n) != EOF && n)
{
memset(a, 0, sizeof(a)); //对每个分数初始化为0
while(n--)
{
scanf("%d",&k); //输入分数
a[k]++;
}
scanf("%d",&k); //输入给定分数
printf("%d\n",a[k]); //输出给定分数的人数
}
return 0;
}
热心网友 时间:2024-10-24 07:03
注意这句话"Huge input, scanf is recommended."所以将所有的cin改成scanf就ac了。
#include <iostream>
using namespace std;
int main()
{
int n, i, a[1000], m, d;
int *p ;
while (scanf("%d",&n)) {
if ( n == 0) {
return 0;
}
for ( i = 0; i < n; i++) {
scanf("%d",&a[i]);
}
//cin >> m;
scanf("%d",&m);
d = 0;
for ( i = 0; i < n; i++) {
if ( a[i] == m) {
d++;
}
}
//cout << d << endl;
printf("%d\n",d);
}
}
热心网友 时间:2024-10-24 06:58
HintHint
Huge input, scanf is recommended.
不要用cin,cout,用scanf,printf。标准IO流很慢。
或者不想改的话,加一句ios::sync_with_stdio(false);把同步关了也行。