C++语言支持数组数据结构,它可以存储一个固定大小的相同类型元素的顺序集合。
输出一个整数序列中与指定数字相同的数的个数。
输入:
输入包含三行: 第1行为n(n<=100),表示整数序列的长度; 第2行为n个整数,整数之间以一个空格分开; 第3行为包含一个整数,为指定的数字m。
输出:
输出为n个数中与m相同的数的个数。
样例输入:
3 2 3 2 2
样例输出:
2
陶陶家的院子里有一棵苹果树,每到秋天树上就会结出10个苹果。苹果成熟的时候,陶陶就会跑去摘苹果。陶陶有个30厘米高的板凳,当她不能直接用手摘到苹果的时候,就会踩到板凳上再试试。
现在已知10个苹果到地面的高度,以及陶陶把手伸直的时候能够达到的最大高度,请帮陶陶算一下她能够摘到的苹果的数目。假设她碰到苹果,苹果就会掉下来。
输入:
两行数据。第1行包含10个100~200之间(包括100到200)的整数(以厘米为单位)分别代表10个苹果到地面的高度,两个相邻的整数之间用一个空格隔开。第2行只包括一个100~120之间(包含100到120)的整数(以厘米为单位),表示陶陶把手伸直的时候能够达到的最高高度。
输出:
一行,这一行只包含一个整数,表示陶陶能够摘到的苹果的数目。
样例输入:
100 200 150 140 129 134 167 198 200 111 110
样例输出:
5
下面是一个图书的单价表:
| 图书 | 单价 | 图书 | 单价 |
|---|---|---|---|
| 《基础知识》 | 28.9元/本 | 《数据结构》 | 32.7元/本 |
| 《数学体系》 | 45.6元/本 | 《基础算法》 | 78元/本 |
| 《计算机组成》 | 35元/本 | 《计算机网络》 | 86.2元/本 |
| 《操作系统》 | 27.8元/本 | 《人工智能》 | 43元/本 |
| 《信息学奥赛》 | 56元/本 | 《编译原理》 | 65元/本 |
给定每种图书购买的数量,编程计算应付的总费用。 输入: 一行,包含10个整数(大于等于0,小于等于100),分别表示购买的以上书籍(从左到右,从上到下的循序)的数量(以本为单位)。每两个整数之间用一个空格分开。 输出: 一行,包含一个浮点数f,表示应付的总费用。精确到小数点后一位。 样例输入: 1 5 8 10 5 1 1 2 3 4 样例输出: 2140.2
将一个数组中的值按逆序重新存放。例如:原来的顺序为8,6,5,4,1。要求改为1,4,5,6,8。 输入: 两行:第1行为数组中元素的个数n(1<n<100);第2行是n个整数,每两个整数之间用空格分隔。 输出: n对应的分段函数值:f(n)。结果保留到小数点后三位。 样例输入: 5 8 6 5 4 1 样例输出: 1 4 5 6 8
某医院想统一一下某项疾病的获得与否与年龄是否有关,需要对以前的诊断记录进行整理,按照0~18,19~35,36~60,61以上(含61)四个年龄段统计的患病人数占总患病人数的比例。 输入: 共两行,第1行以往病人的数目n(0<n<=100),第2行每个病人患病时的年龄。 输出: 按照0~18,19~35,36~60,61以上(含61)四个年龄段输出该段患病人数占总患病人数的比例,以百分比的形式输出,精确到小数点后两位。每个年龄段占一行,共四行。 样例输入: 10 1 11 21 31 41 51 61 71 81 91 样例输出: 20.00% 20.00% 20.00% 40.00%
某校外大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米。我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置;数轴上的每个整数点,即0,1,2,...,L,都种有一棵树。 由于马路上有一些区域要用来建地铁。这些区域用它们在数轴上的起始点和终止点表示。已知任一区域的起始点和终止点的坐标都是整数,区域之间可能有重合的部分。现在要把这些区域中的树(包括区域端点处的两棵树)移走。你的任务是计算将这些树都移走后,马路上还有多少棵树。 输入: 第1行有两个整数L(1<=L<=10,000)和M(1<=M<=100),L代表马路的长度,M代表区域的数目,L和M之间用一个空格隔开。接下来的M行每行包含两个不同的整数,用一个空格隔开,表示一个区域的起始点和终止点的坐标。 对于20%的数据,区域之间没有重合的部分;对于其他的数据,区域之间有重合的情况。 输出:
一行,这一行只包含一个整数,表示马路上剩余的树的数目。 样例输入: 500 3 150 300 100 200 470 471 样例输出: 298
在线性代数,计算几何中,向量点积是一种十分重要的运算。给定两个n维向量a=(a1,a2,...,an)和b=(b1,b2,...,bn),求点积a·b=a1·b1+a2·b2+...+an·bn。 输入: 第1行是一个整数n(1<=n<=1000); 第2行包含n个整数a1,a2,...,an; 第3行包含n个整数b1,b2,...,bn; 相邻整数之间用单个空格隔开。每个整数的绝对值不超过1000。 输出: 一个整数,即两个向量的点积结果。 样例输入: 3 1 4 6 2 1 5 样例输出: 36
8、开关灯 假设有n盏灯(n为不大于5000的正整数),从1~n按顺序依次编号,初始时全部处于开启状态;有m个人(m为不大于n的正整数)也从1~m依次编号。 第一个人(1号)将灯全部关闭,第二个人(2号)将编号为2的倍数的灯打开,第三个人(3号)将编号为3的倍数的灯做相反处理(即将打开的灯关闭,将关闭的灯打开)。依照编号递增顺序,以后的人都和3号一样,将凡是自己编号倍数的灯做相反处理。 请问:当第m个人操作之后,哪几盏灯是关闭的,按从小到大输出其编号,其间用逗号间隔。 输入: 输入正整数n和m,以单个空格隔开。 输出: 顺次输出关闭的灯的编号,其间用逗号间隔。 样例输入: 10 10 样例输出: 1,4,9
在一个序列(下标从1开始)中查找一个给定的值,输出第一次出现的位置。 输入: 第1行包含一个正整数n(1<=n<=10000),表示序列中元素个数。 第2行包含n个整数,依次给出序列的每个元素,相邻两个整数之间用单个空格隔开。元素的绝对值不超过10000。 第3行包含一个整数x,为需要查找的特定值。x的绝对值不超过10000。 输出: 若序列中存在x,输出x第一次出现的下标;否则输出-1。 样例输入: 5 2 3 6 7 3 3 样例输出: 2
津津上初中了。妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班。另外,妈妈每周还会送她去学习朗读、舞蹈和钢琴。但是津津如果一天上课超过8个小时就会不高兴,而且上得越久就会越不高兴。假设津津不会因为其他事不高兴,并且她的不高兴不会持续到第二天。请你帮忙检查一下津津下周的日程安排,看看下周她会不会不高兴;如果会的话,哪天最不高兴。 输入: 七行数据,分别表示周一到周日的日程安排。每行包括两个小于10的非负整数,用空格隔开,分别表示津津在学校上课的时间和妈妈安排她上课的时间。 输出: 一行,这一行只包含一个数字。如果不会不高兴,则输出0;如果会,则输出最不高兴的是周几(用1,2,3,4,5,6,7分别代表周一,周二,周三,周四依此类推)。如果有两天或两天以上不高兴的程度相当,则输出时间最靠前的一天。 样例输入: 5 3 6 2 7 2 5 3 5 4 0 4 0 6 样例输出: 3
输出一个整数序列中最大的数和最小的数的差。 输入: 第1行为m,表示整数个数,整数个数不会大于10,000。 第2行为m个整数,分别以空格隔开,每个整数的绝对值不会大于10,000。 输出: m个数中最大值和最小值的差。 样例输入: 5 2 5 7 4 2 样例输出: 5
输出一个整数数列中不与最大数相同的数字之和。 输入: 分为两行: 第1行为n(n为接下来数的个数,n<=100); 第2行n个整数,分别以一个空格分开,每个整数的大小在-1,000,000与1,000,000之间。 输出: n个数中除去最大数后其余数字之和。 样例输入: 3 1 2 3 样例输出: 3
医院采样了某临床病例治疗期间的白细胞数量样本n份,用于分析某种新抗生素对该病例的治疗效果。为了降低分析误差,要先从这n份样本中去除一个数值最大的样本和一个数值最小的样本,然后将剩余n-2个有效样本的平均值作为分析指标。同时,为了观察该抗生素的疗效是否稳定,还要给出该平均值的误差,即所有有效样本(不包含已扣除的两个样本)与该平均值之差的绝对值的最大值。 现在请你编写程序,根据提供的n个样本值,计算出该病例的平均白细胞数量和对应的误差。 输入: 第1行是一个正整数n(2<n<=300),表明共有n个样本。 以下共有n行,每行为一个浮点数,为对应的白细胞数量,其单位为10^9/L。数与数之间以一个空格分开。 输出: 两个浮点数,中间以一个空格分开。分别为平均白细胞数量和对应的误差,单位也是10^9/L。计算结果需保留到小数点后2位。 样例输入: 5 12.0 13.0 11.0 9.0 10.0 样例输出: 11.00 1.00
14、直方图 给定一个非负整数数组,统计里面每一个数的出现次数。我们只统计到数组里的最大的数。 假设Fmax(Fmax<10,000)是数组里最大的数,那么我们只统计{0,1,2,...,Fmax}里每个数出现的次数。 输入: 第1行n(1<=n<=10,000)是数组的大小。 紧接着一行是数组的n个元素。 输出: 按顺序输出每个数的出现次数,一行一个数。如果没有出现过,则输出0。 对于例子中的数组,最大的数是3,因此我们只统计{0,1,2,3}的出现次数。 样例输入: 5 1 1 2 3 1 样例输出: 0 3 1 1
15、最长平台 已知一个已经从小到大排序的数组,这个数组的一个平台(Plateau)就是连续的一串相同的元素,并且这一串元素不能再延伸。例如:在1,2,2,3,3,3,4,5,5,6中1,2-2,3-3-3,4,5-5,6都是平台。试编写一个程序,接收一个数组,把这个数组最长的平台找出来。在上面的例子中3-3-3就是最长的平台。 输入: 第1行有一个整数n,为数组元素的个数;第2行有n个整数,整个整数之间以一个空格分开。 输出: 最长平台的长度。 样例输入: 10 1 2 2 3 3 3 4 5 5 6 样例输出: 3
给定含有n个整数的序列,要求对这个序列进行去重操作。所谓去重,就是对这个序列中每个重复出现的数,只保留该数第一次出现的位置,删除其余位置。 输入: 包含两行: 第1行包含一个正整数n(1<=n<=20,000),表示第2行序列中数字的个数; 第2行包含n个整数,每个整数之间以一个空格分开。每个整数大于等于10、小于等于100。 输出: 一行,按照输入的顺序输出其中不重复的数字,每个整数之间用一个空格分开。 样例输入: 5 10 12 93 12 75 样例输出: 10 12 93 75
平衡数:如果正整数新的每一位数字d恰好在x中出现了d次,则认为x是平衡数。例如x=122,其中
对于百位数d = 1,其中1在122中总共出现了1次,符合条件;
对于是为数d = 2,其中2在122中总共出现了2次,符合条件;
对于个位数d = 2,其中2在122中总共出现了2次,符合条件;
因为122的每一位都符合条件,所以122是平衡数。
现在给出两个正整数l,r(l<=r),请帮忙求出l-r中所有平衡数的和。 输入: 输入共一行,两个以空格隔开的正整数l,r(1<=l<=r<=10000)。 输出: 输出共一行,一个整数,表示1~r中所有平衡数的和。 样例输入: 1 25 样例输出: 23