博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
F: CET-4
阅读量:4959 次
发布时间:2019-06-12

本文共 1201 字,大约阅读时间需要 4 分钟。

我们都知道现在的CET-4考试的总分是750.一天老师叫Flying统计班上CET-4的成绩分数段。
如有如下几个成绩456 256 566 525,那么456 到 567这个分数段就有 3 个人。
因为对于一个班来说,数据比较小,很容易就统计出来了,所以他就想如果统计的人数比较多,
该怎么样快速的统计出结果呢?由于Flying是做ACM的,所以就写了个程序,解决了这个问题。
你该如何来解决这个问题呢?

输入第一行有两个数n,q。n代表学生总数(n <= 1,000,000),q代表询问次数,
询问在st, ed之间分数的学生个数,包括st和ed    ( q <= 100,000)。
第二行是n个学生的CET4成绩, 接下来q行分别是st和ed。

输出st到ed这个分数段的学生总数,包括st和ed这连个分数。

5 54 3 2 2 10 20 54 65 72 4

35104 代码:
#include 
#include
#include
#include
#include
using namespace std;int main(){ int n, q; int cet[750];//数组统计每个分数的个数 int start, end,score; int i, j; while (scanf("%d%d", &n, &q) != EOF) { memset(cet, 0, sizeof(cet));//初始化 for (i = 0; i < n; i++) { scanf("%d", &score); cet[score]++;//统计 } for (j = 0; j < q; j++) { int count = 0; scanf("%d%d", &start, &end); for (i = start; i <= end; i++) { count=count+cet[i];//计算 } printf("%d\n", count); } } return 0;}

 

转载于:https://www.cnblogs.com/gcter/p/8608035.html

你可能感兴趣的文章
arraylist
查看>>
zoj 1649 Rescue (BFS)(转载)
查看>>
2124: 等差子序列 - BZOJ
查看>>
字符串匹配算法综述
查看>>
Linux centosVMware shell 管道符和作业控制、shell变量、环境变量配置文件
查看>>
【设计模式】工厂模式
查看>>
两个表格中数据不用是一一对应关系--来筛选不同数据,或者相同数据
查看>>
客户数据库出现大量cache buffer chains latch
查看>>
機械の総合病院 [MISSION LEVEL: C]
查看>>
实战练习细节(分行/拼接字符串/字符串转int/weak和copy)
查看>>
Strict Standards: Only variables should be passed by reference
查看>>
hiho_offer收割18_题解报告_差第四题
查看>>
AngularJs表单验证
查看>>
静态方法是否属于线程安全
查看>>
02号团队-团队任务3:每日立会(2018-12-05)
查看>>
SQLite移植手记1
查看>>
C# windows程序应用与JavaScript 程序交互实现例子
查看>>
HashMap详解
查看>>
js05-DOM对象二
查看>>
mariadb BINLOG_FORMAT = STATEMENT 异常
查看>>