一维数组
芷水无棱
这个作者很懒,什么都没留下…
展开
-
信息学奥赛一本通:一维数组
其中,a是一维数组的数组名,该数组有10个元素,依次表示为:a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9]。当在说明部分定义了一个数组变量之后,C++编译程序为所定义的数组在内存空间开辟一串连续的存储单元,每个数组第一个元素的下标都是0,因此第一个元素为第0个数组元素。通过给出的数组名称和这个元素在数组中的位置编号(即下标),程序可以引用这个数组中的任何一个元素。(2)数组的精妙在于下标可以是变量,通过对下标变量值的灵活控制,达到灵活处理数组元素的目的。原创 2024-04-17 10:32:56 · 297 阅读 · 0 评论 -
信息学奥赛一本通:1118:铺地毯
接下来的n行中,第i+1行表示编号i的地毯的信息,包含四个正整数a,b,g,k,每两个整数之间用一个空格隔开,分别表示铺设地毯的左下角的坐标(a,b)以及地毯在x轴和y轴方向的长度。输入输出样例1说明:如下图,1号地毯用实线表示,2号地毯用虚线表示,3号用双实线表示,覆盖点(2,2)的最上面一张地毯是3号地毯。输入输出样例2说明:如下图,1号地毯用实线表示,2号地毯用虚线表示,3号用双实线表示,覆盖点(4,5)的最上面没有一张地毯。第n+2行包含两个正整数x和y,表示所求的地面的点的坐标(x,y)。原创 2024-01-25 09:52:07 · 942 阅读 · 0 评论 -
信息学奥赛一本通:1117:整数去重
给定含有n个整数的序列,要求对这个序列进行去重操作。所谓去重,是指对这个序列中每个重复出现的数,只保留该数第一次出现的位置,删除其余位置。第二行包含n个整数,整数之间以一个空格分开。每个整数大于等于10、小于等于5000。第一行包含一个正整数n(1≤n≤20000),表示第二行序列中数字的个数;输出只有一行,按照输入的顺序输出其中不重复的数字,整数之间用一个空格分开。原创 2024-01-25 09:49:11 · 554 阅读 · 0 评论 -
信息学奥赛一本通:1116:最长平台
试编写一个程序,接收一个数组,把这个数组最长的平台找出来。第一行有一个整数n,为数组元素的个数。第二行有n整数,整数之间以一个空格分开。)就是连续的一串值相同的元素,并且这一串元素不能再延伸。已知一个已经从小到大排序的数组,这个数组的一个平台(输出最长平台的长度。原创 2024-01-25 09:47:13 · 503 阅读 · 0 评论 -
信息学奥赛一本通:1115:直方图
假设 Fmax(Fmax<10000)是数组里最大的数,那么我们只统计{0,1,2.....Fmax}里每个数出现的次数。对于例子中的数组,最大的数是33,因此我们只统计{0,1,2,3}{0,1,2,3}的出现频数。给定一个非负整数数组,统计里面每一个数的出现次数。我们只统计到数组里最大的数。按顺序输出每个数的出现次数,一行一个数。如果没有出现过,则输出00。第一行n是数组的大小。1≤n≤10000。紧接着一行是数组的n个元素。原创 2024-01-25 09:46:11 · 467 阅读 · 0 评论 -
信息学奥赛一本通:1114:白细胞计数
为了降低分析误差,要先从这n份样本中去除一个数值最大的样本和一个数值最小的样本,然后将剩余n−2个有效样本的平均值作为分析指标。同时,为了观察该抗生素的疗效是否稳定,还要给出该平均值的误差,即所有有效样本(即不包括已扣除的两个样本)与该平均值之差的绝对值的最大值。以下共有n行,每行为一个浮点数,为对应的白细胞数量,其单位为109/。数与数之间以一个空格分开。现在请你编写程序,根据提供的n个样本值,计算出该病例的平均白细胞数量和对应的误差。输入的第一行是一个正整数n(2<n≤300),表明共有n个样本。原创 2024-01-24 11:32:33 · 1056 阅读 · 0 评论 -
信息学奥赛一本通:1113:不与最大数相同的数字之和
第二行N个整数,数与数之间以一个空格分开,每个整数的范围是-1000,000到1000,000。第一行为N(N为接下来数的个数,N <= 100);输出一个整数数列中不与最大数相同的数字之和。输出为N个数中除去最大数其余数字之和。原创 2024-01-24 11:31:06 · 498 阅读 · 0 评论 -
信息学奥赛一本通:1112:最大值和最小值的差
【题目描述】输出一个整数序列中最大的数和最小的数的差。【输入】第一行为M,表示整数个数,整数个数不会大于10000;第二行为M个整数,以空格隔开,每个整数的绝对值不会大于10000。【输出】输出M个数中最大值和最小值的差。【输入样例】52 5 7 4 2【输出样例】5#include<bits/stdc++.h>using namespace std;int main(){ int n,max=0,min=10000;原创 2024-01-24 11:30:16 · 807 阅读 · 0 评论 -
信息学奥赛一本通:1111:不高兴的津津
妈妈认为津津应该更加用功学习,所以津津除了上学之外,还要参加妈妈为她报名的各科复习班。但是津津如果一天上课超过八个小时就会不高兴,而且上得越久就会越不高兴。假设津津不会因为其它事不高兴,并且她的不高兴不会持续到第二天。如果会的话,哪天最不高兴。如果不会不高兴则输出0,如果会则输出最不高兴的是周几(用1, 2, 3, 4, 5, 6, 7分别表示周一,周二,周三,周四,周五,周六,周日)。每行包括两个小于10的非负整数,用空格隔开,分别表示津津在学校上课的时间和妈妈安排她上课的时间。原创 2024-01-24 11:29:31 · 618 阅读 · 0 评论 -
信息学奥赛一本通:1110:查找特定的值
第二行包含n个整数,依次给出序列的每个元素,相邻两个整数之间用单个空格隔开。元素的绝对值不超过10000。第一行包含一个正整数n,表示序列中元素个数。第三行包含一个整数x,为需要查找的特定值。x的绝对值不超过10000。在一个序列(下标从1开始)中查找一个给定的值,输出第一次出现的位置。若序列中存在x,输出x第一次出现的下标;原创 2024-01-24 11:28:41 · 498 阅读 · 0 评论 -
信息学奥赛一本通:1109:开关灯
第一个人(1号)将灯全部关闭,第二个人(2号)将编号为2的倍数的灯打开,第三个人(3号)将编号为3的倍数的灯做相反处理(即将打开的灯关闭,将关闭的灯打开)。依照编号递增顺序,以后的人都和3号一样,将凡是自己编号倍数的灯做相反处理。假设有N盏灯(N为不大于5000的正整数),从1到N按顺序依次编号,初始时全部处于开启状态;有M个人(M为不大于N的正整数)也从1到M依次编号。请问:当第M个人操作之后,哪几盏灯是关闭的,按从小到大输出其编号,其间用逗号间隔。顺次输出关闭的灯的编号,其间用逗号间隔。原创 2024-01-22 09:58:30 · 699 阅读 · 0 评论 -
信息学奥赛一本通:1108:向量点积计算
在线性代数、计算几何中,向量点积是一种十分重要的运算。给定两个n维向量a=(a1,a2,...,an)和b=(b1,b2,...,bn),求点积a⋅b=a1b1+a2b2+...+anbn。相邻整数之间用单个空格隔开。每个整数的绝对值都不超过1000。第二行包含n个整数a1,a2,...,an;第三行包含n个整数b1,b2,...,bn;第一行是一个整数n(1≤n≤1000);一个整数,即两个向量的点积结果。原创 2024-01-22 09:57:39 · 900 阅读 · 0 评论 -
信息学奥赛一本通:1107:校门外的树
已知任一区域的起始点和终止点的坐标都是整数,区域之间可能有重合的部分。第一行有两个整数L(1 ≤ L ≤ 10000)和 M(1 ≤ M ≤ 100),L代表马路的长度,M代表区域的数目,L和M之间用一个空格隔开。接下来的M行每行包含两个不同的整数,用一个空格隔开,表示一个区域的起始点和终止点的坐标。某校大门外长度为L的马路上有一排树,每两棵相邻的树之间的间隔都是1米。我们可以把马路看成一个数轴,马路的一端在数轴0的位置,另一端在L的位置;数轴上的每个整数点,即0,1,2,……原创 2024-01-22 09:55:51 · 661 阅读 · 0 评论 -
信息学奥赛一本通:1106:年龄与疾病
某医院想统计一下某项疾病的获得与否与年龄是否有关,需要对以前的诊断记录进行整理,按照0-18、19-35、36-60、61以上(含61)四个年龄段统计的患病人数占总患病人数的比例。按照0-18、19-35、36-60、61以上(含61)四个年龄段输出该段患病人数占总患病人数的比例,以百分比的形式输出,精确到小数点后两位。每个年龄段占一行,共四行。共2行,第一行为过往病人的数目n(0<n<=100),第二行为每个病人患病时的年龄。原创 2024-01-22 09:54:52 · 1204 阅读 · 0 评论 -
信息学奥赛一本通:1105:数组逆序重存放
两行:第一行数组中元素的个数n(1<n<100),第二行是n个整数,每两个整数之间用空格分隔。一行:输出逆序后数组的整数,每两个整数之间用空格分隔。将一个数组中的值按逆序重新存放。原创 2024-01-22 09:54:05 · 463 阅读 · 0 评论 -
信息学奥赛一本通:1104:计算书费
输入一行,包含10个整数(大于等于0,小于等于100),分别表示购买的《计算概论》、《数据结构与算法》、《数字逻辑》、《C++程序设计教程》、《人工智能》、《计算机体系结构》、《编译原理》、《操作系统》、《计算机网络》、《JAVA程序设计》的数量(以本为单位)。输出一行,包含一个浮点数f,表示应付的总费用。数据结构与算法 32.7元/本。C++程序设计教程 78元/本。JAVA程序设计 65元/本。计算概论 28.9元/本。编译原理 27.8元/本。人工智能 35 元/本。计算机网络 56元/本。原创 2024-01-18 14:19:32 · 645 阅读 · 0 评论 -
信息学奥赛一本通:1103:陶陶摘苹果
第一行包含10个100到200之间(包括100和200)的整数(以厘米为单位)分别表示10个苹果到地面的高度,两个相邻的整数之间用一个空格隔开。第二行只包括一个100到120之间(包含100和120)的整数(以厘米为单位),表示陶陶把手伸直的时候能够达到的最大高度。苹果成熟的时候,陶陶就会跑去摘苹果。陶陶有个30厘米高的板凳,当她不能直接用手摘到苹果的时候,就会踩到板凳上再试试。现在已知10个苹果到地面的高度,以及陶陶把手伸直的时候能够达到的最大高度,请帮陶陶算一下她能够摘到的苹果的数目。原创 2024-01-18 14:15:53 · 526 阅读 · 0 评论 -
信息学奥赛一本通:1102:与指定数字相同的数的个数
第一行为n,表示整数序列的长度(n≤100);输出一个整数序列中与指定数字相同的数的个数。第二行为n个整数,整数之间以一个空格分开;第三行包含一个整数,为指定的数字m。输出为n个数中与m相同的数的个数。原创 2024-01-17 09:11:17 · 531 阅读 · 0 评论 -
信息学奥赛一本通:2040:【例5.7】筛选法找质数
用筛法求出n(2≤n≤1000)以内的全部质数。多行,由小到大的质数。原创 2024-01-17 09:10:11 · 559 阅读 · 0 评论 -
信息学奥赛一本通:2039:【例5.6】冒泡排序
编程输入n(1≤n≤20)个小于1000非负整数,然后自动按从大到小的顺序输出。由大到小的n个非负整数,每个数占一行。第二行,n个非负整数。第一行,数的个数n;原创 2024-01-17 09:05:48 · 437 阅读 · 0 评论 -
信息学奥赛一本通:1101:2038:【例5.5】最大数位置
输入n个整数,存放在数组a[1]]至a[n]中,输出最大数所在位置(n≤1000)。第二行,n个正整数,每个数在。第一行,数的个数n;原创 2024-01-16 11:27:51 · 558 阅读 · 0 评论 -
信息学奥赛一本通:1101:2037:【例5.4】约瑟夫问题
N个人围成一圈,从第一个人开始报数,数到M的人出圈;再由下一个人开始报数,数到M的人出圈;输出依次出圈的人的编号。对于所有数据,2≤N,M≤1000。输出一行,依次出圈的人的编号。原创 2024-01-16 11:25:53 · 491 阅读 · 0 评论 -
信息学奥赛一本通:1101:2036:【例5.3】开关门
宾馆里有n(2≤n≤1000)个房间,从1∼n编了号。第一个服务员把所有的房间门都打开了,第二个服务员把所有编号是2的倍数的房间“相反处理”,第三个服务员把所有编号是3的倍数的房间作“相反处理”…,以后每个服务员都是如此。当第n个服务员来过后,哪几扇门是打开的。(所谓“相反处理”是:原来开着的门关上,原来关上的门打开。一行,由小到大的打开门的房间序号,各序号之间用一个空格隔开。原创 2024-01-16 11:24:14 · 347 阅读 · 0 评论 -
信息学奥赛一本通:1101:2035:【例5.2】平移数据
将a数组中第一个元素移到数组末尾,其余数据依次往前平移一个位置。平移后的数组元素,每个数用一个空格隔开。第二行为n个小于1000的正整数。第一行为数组a的元素个数;原创 2024-01-16 11:22:46 · 429 阅读 · 0 评论 -
信息学奥赛一本通:1101:2034:【例5.1】反序输出
输入n个数,要求程序按输入时的逆序把这n个数打印出来,已知整数不超过100个。也就是说,按输入相反顺序打印这n个数。如题要求:一行,共有n个数,每个数之间用一个空格隔开。输入一行共有n个数,每个数之间用空格隔开。原创 2024-01-16 11:21:08 · 563 阅读 · 0 评论