一维数组操作(GOC常考类型)答案

第1题     宇航局招聘     时限:1s 空间:256m

宇航局准备招收一批科研人员从事月球探索的航空科研工作。这个职位来了很多应聘者,宇航局对众多应聘者进行综合素质考试,最终会选出x名综合得分排名靠前应聘者。目前考试已经结束了,宇航局需要根据目前考试的成绩计算出,如果要选出x个分数靠前的人,分数线应该划到多少分?请你写一个程序来帮助宇航局计算分数线。
比如:如果有10名选手参加考试,他们的得分如下
100 99 98 97 96 95 94 93 92 91 90
如果要选出3名分数靠前的人,那么分数线应该划在98分。

输入格式

第一行是一个整数n,代表参加考试的人数(n<=1000)
第二行有n个整数,用空格隔开,代表n个人的考试分数(注意:不存在成绩一样的分数)
第三行有一个整数x(x < n),代表宇航局要选出的人数

输出格式

一个整数,代表如果要选出x个人,宇航局应当划出的分数线。

输入/输出例子1

输入:

8
100 90 98 92 85 70 88 96
2

输出:

98

代码如下:

#include<bits/stdc++.h>
using namespace std;
long long n,x,a[2000];
int l(int x,int y)
{return x>y;
}
int main(){cin>>n;for(int i=1;i<=n;i++)cin>>a[i];cin>>x;sort(a+1,a+n+1,l);cout<<a[x];return 0;
}
第2题     愧疚指数     时限:1s 空间:256m

佛山创文要求大家要遵守交通规则,发扬尊老爱幼精神。文文想做一个关于公交文化的调查。他专门为排队上车发明了一套叫做“愧疚指数”的分析系统,就是在队列中把人分为三等:第一等为优先级最高,最需要照顾的老人、小孩、孕妇等,应该最优先上车,优先代号为1;第二等是普通女人,为了发扬绅士风度,男人是要让女人先上车的,但优先级低于一等,优先代号为2;第三等是普通男人,优先级最低,应该排在最后面,优先代号为3。所谓的“愧疚指数”是指队列中一个人后面有多少人的优先级比他高,如队列中有5个人分别为:3 2 1 2 1,那么这5个人的“愧疚指数”分别为:4 2 0 1 0。现在已经知道一个队列,请你帮文文算出队列中每个人的“愧疚指数”。

输入格式

第一行是一个正整数n,表示一共有多少个人排队。

 第二行有n个用空格隔开的正整数,它们从左至右给出了队列中n个人的优先代号。

对于80%的数据,n≦10000;

 对于100%的数据,n≦200000。


 

输出格式

 输出一行:有n个用空格分开的正整数,代表队列中每个人的“愧疚指数”。

输入/输出例子1

输入:

5

3 2 1 2 1

输出:

4 2 0 1 0

代码如下:

#include<bits/stdc++.h>
using namespace std;
long long n,a[200005],s1,s2;
int main(){cin>>n;for(int i=1;i<=n;i++){cin>>a[i];if(a[i]==1)s1++;if(a[i]==2)s2++;}for(int i=1;i<=n;i++){if(a[i]==1){cout<<0<<" ";s1--;}if(a[i]==2){cout<<s1<<" ";s2--;}if(a[i]==3){cout<<s1+s2<<" ";}}return 0;
}
第3题     支撑数      时限:1s 空间:256m

给出一系列整数,输出所有的支撑数”。支撑数是这样一种数:它不在第一个,也不在最后一个,而且比左边和右边相邻的数都大。

输入格式

第一行1个整数n,表示数的个数,3<=n<=100

第二行n个整数,每两个数之间用一个空格隔开。

输出格式

按读入顺序,一次输出一行若干个支撑数,每两个数之间用一个空格隔开。

输入/输出例子1

输入:

14

1 3 2 4 1 5 3 9 7 10 8 23 85 43

输出:

3 4 5 9 10 85

代码如下:

#include<bits/stdc++.h>
using namespace std;
long long a,b[200];
int main(){    cin>>a;for(int i=1;i<=a;i++)cin>>b[i];for(int i=2;i<=a-1;i++){if(b[i]>b[i-1]&&b[i]>b[i+1])cout<<b[i]<<" ";}return 0;
} 
第4题     最长平台     时限:1s 空间:256m

S来到一块阶梯地,这一块阶梯地具有连续的n小块地,每一小块地都有一定的高度,如果连续m段地的高度相同,那么我们称这连续一段地的平地值为m。现在给出这一块阶梯地每一块地的高度值,请试编写一个程序,把这块阶梯地平地值最大者找出来并输出该平地值

输入格式

第一行一个正整数n<=10000.

第二行n个正整数,表示地的高度。

输出格式

最大平地值

输入/输出例子1

输入:

10

1 2 2 3 3 3 4 5 5 6

输出:

3

代码如下:

#include<bits/stdc++.h>
using namespace std;
long long maxx=1,n,a[10005],s=1;
int main(){cin>>n;for(int i=1;i<=n;i++)cin>>a[i];for(int i=1;i<n;i++) {if(a[i]==a[i+1])s++;if(s>maxx)maxx=s;if(a[i]!=a[i+1])s=1;}cout<<maxx;return 0;
}
第5题     开心值     时限:1s 空间:256m

最近有 n开心的事,每句话都有一个正整数开心值(人啊,就是要开心)。开心小哥想知道连续 m开心值的和的最小值是多少,但是由于最近忙于开心开心小哥只好请你编个程序告诉他。

输入格式

一行有两个用空格隔开的整数,分别代表 n m。1<=m<=n<=100000。

 2 到第 (n + 1) 行,每行一个整数,第 (i + 1) 行的整数 a_i代表第 i件事的开心 a_i,a_i<=10000。

输出格式

输出一行一个整数,表示连续 m 个开心值的和的最小值

输入/输出例子1

输入:

 8  3

1

4

7

3

1

2

4

3

输出:

6

#include<bits/stdc++.h>
using namespace std;
long long n,m,a[100005],s,minn;
int main(){cin>>n>>m;for(int i=1;i<=n;i++)cin>>a[i];   for(int i=1;i<=m;i++)minn=minn+a[i];for(int i=1;i<=n-m+1;i++){s=0;for(int j=i;j<=i+m-1;j++){s=s+a[j];}if(s<minn)minn=s;}cout<<minn;return 0;
}
第6题     可爱的小鱼(小鱼比可爱)      时限:1s 空间:256m

人比人,气死人;鱼比鱼,难死鱼。小鱼最近参加了一个“比可爱”比赛,比的是每只鱼的可爱程度。参赛的鱼被从左到右排成一排,头都朝向左边,然后每只鱼会得到一个整数数值,表示这只鱼的可爱程度,很显然整数越大,表示这只鱼越可爱,而且任意两只鱼的可爱程度可能一样。由于所有的鱼头都朝向左边,所以每只鱼只能看见在它左边的鱼的可爱程度,它们心里都在计算,在自己的眼力范围内有多少只鱼不如自己可爱呢。请你帮这些可爱但是鱼脑不够用的小鱼们计算一下。

输入格式

第一行输入一个整数 n,表示鱼的数目,n<=100。

第二行内输入 n个整数,用空格间隔,依次表示从左到右每只小鱼的可爱程度,数据范围[0,10^8]。

输出格式

一行输出 n个整数,用空格间隔,依次表示每只小鱼眼中有多少只鱼不如自己可爱。

输入/输出例子1

输入:

6

4 3 0 5 1 2

输出:

0 0 0 3 1 2

代码如下:

#include<bits/stdc++.h>
using namespace std;
long long n,a[100005],s;
int main(){cin>>n;for(int i=1;i<=n;i++){s=0;cin>>a[i];for(int j=i-1;j>=1;j--)if(a[j]<a[i])s++;cout<<s<<" ";}return 0;
}
第7题     期末成绩     时限:1s 空间:256m

又到学期末,小明迎来了又一次的期末考试。虽然每学期都要考试,但是这次期末考试对小明来说意义重大。因为小明的女神妈妈说,如果小明这次考了全班前三名就给他买一台笔记本电脑。虽说小明没有十足的信心,但是女神妈妈的话不能不听啊。

考完试后,小明拿到了全班的成绩单,这张成绩单是按学号顺序排好的。小明很想知道班里到底有多少人分数比他高,现在就请你帮帮他,帮他数一下到底有多少人的分数比他高吧。

输入格式

输入数据的第一行是一个正整数T,表示测试数据的组数,接下来有T组测试数据。

每组数据包括两行。

第一行有两个正整数NK0<N<10000<K<=N,分别表示成绩单上总共的学生数目,和小明的学号。

第二行有N个整数Xi0<=Xi<=100)分别表示各个学生的成绩,以学号递增顺序给出,第一个学生学号为1

输出格式

对于每组数据,请在一行里输出班里一共有多少个学生成绩高于小明。

输入/输出例子1

输入:

1

3 2

81 72 63

输出:

1

代码如下:

#include<bits/stdc++.h>
using namespace std;
long long n,x,y,a[20000];
int main(){cin>>n;for(int i=1;i<=n;i++){int s=0;cin>>x>>y;for(int j=1;j<=x;j++)cin>>a[j];for(int j=y-1;j>=1;j--)if(a[j]>a[y])s++;for(int j=y+1;j<=x;j++)if(a[j]>a[y])s++;cout<<s<<endl;for(int j=1;j<=x;j++)a[j]=0;}return 0;
}
第8题     数列(斐波那契数列)      时限:1s 空间:256m

已知一个数列的前几个数是: 1, 1, 2, 3, 5, 8, 13, 21,.. 编程实现输入一个整数N,输出第N项是多少。例如输入输出3N小于等于20

输入格式

输入t ,随后输入t个要查找的数

输出格式

t行,分别表示要查找的数

输入/输出例子1

输入:

5

1

2

3

4

5

输出:

1

1

2

3

5

代码如下:

#include<bits/stdc++.h>
using namespace std;
long long n,a[100000],x;
int main(){cin>>n;a[1]=1,a[2]=1;for(int i=3;i<=100000;i++)a[i]=a[i-1]+a[i-2];for(int i=1;i<=n;i++){cin>>x;cout<<a[x]<<endl;}return 0;
}
第9题     最后一个小朋友(约瑟夫问题)     时限:1s 空间:256m

N个小朋友手拉手站成一个圆圈,从第一个小朋友开始循环报数,报到M的那个小朋友退到圈外,然后他的下一位重新报"1"。这样继续下去,直到最后只剩下一个小朋友,他原来站在什么位置上呢?

输入格式

仅一行,有两个数N和M,其中N表示小朋友的人数,M表示报到数。1<N<1000,M<=N

输出格式

仅一个数,留下的小朋友的编号。

输入/输出例子1

输入:

8 3

输出:

7

代码如下:

#include<bits/stdc++.h>
using namespace std;
int n,z,s=0;
int main()
{cin>>n>>z;for(int i=2;i<=n;i++)s=(s+z)%i;s++;cout<<s;return 0;
} 
第10题     珠子     时限:1s 空间:256m

BessieN1≤N≤100)粒蓝色和橙色的珠子连成了一串,问有多少对珠子(相邻的)是不同颜色的。

输入格式

第一行,一个整数N

第二行,N个数字(01),其中0表示橙色,1表示蓝色。

输出格式

输出相邻两粒珠是不同颜色的对数。

输入/输出例子1

输入:

6

1 0 0 1 1 1

输出:

2

输入/输出例子2

输入:

3

1 1 0

输出:

2

 代码如下:

#include<bits/stdc++.h>
using namespace std;
long long n,a[105],s;
int main(){cin>>n;for(int i=1;i<=n;i++)cin>>a[i];for(int i=1;i<n;i++)if(a[i]!=a[i+1])s++;if(a[1]!=a[n])s++;//因为珠子是圆形的,所以还要特殊判断一下cout<<s;return 0;
}
第11题     5-5 排名     时限:1s 空间:256m

一年一度的NH小学生程序设计比赛结束啦!组委会公布了所有学生的成绩。现在HuangYongCong想设计一个程序,先将成绩从高到低排,成绩相同则按年级从低到高排,然后查询每个学生有多少人的排名比他高并且年级还低于他?

输入格式

一行一个正整数n(1<=n<=200),表示参赛人数。

第2~n+1行,每行两个正整数,s(0<=s<=400)、g(1<=g<=6),之间用一个空格隔开,分别表示学生的成绩和年级。

输出格式

n行,每行只有一个正整数,其中第i行表示排第i名的学生前面有k个学生排名比他高,且年级比他低。

输入/输出例子1

输入:

5

300  5

200  6

350  4

400  6

250  5

输出:

0

0

1

1

3

代码如下:

#include<bits/stdc++.h>
using namespace std;
int n,a[205],b[205];
int main(){cin>>n;for(int i=1;i<=n;i++){cin>>a[i]>>b[i];}for(int i=1;i<=n;i++){for(int j=i+1;j<=n;j++){if(a[i]<a[j]){swap(a[i],a[j]);swap(b[i],b[j]);}if(a[i]==a[j]){swap(a[i],a[j]);if(b[i]>b[j])swap(b[i],b[j]);}}}for(int i=1;i<=n;i++){int s=0;for(int j=1;j<=i;j++)if(b[i]>b[j])s++;cout<<s<<endl;}return 0;
}
 
提交
第12题     5-3 整理题库     时限:1s 空间:256m

为了提高大家的信息学水平,WU老师连同一些优秀同学建立了一个校内C++题库。题库中目前只有n道题,第i道题的难易程度用ti表示,这n道题目根据易到难的顺序已排好。现在ZhangHu同学设计了m道难度为dj的题目,WU老师准备人他把这m道题都放到题库中,使得题库中的题目仍然是又易到难的顺序排好的。

输入格式

第一行,两个整数n,m。

第二行,n个正整数ti,表示题库中每道题的难度。

第三行,m个正整数dj,表示待插入的每道题的难度。

1<=ti<=32767 , 1<=dj<=32767 , 1<=n<=1000 , 1<=m<=1000。

输出格式

一行,若干个用空格隔开的正整数,表示插入新题后题库的试题难度情况。

输入/输出例子1

输入:

5  1

1  1  2  3  7

1

输出:

1  1  1  2  3  7

代码如下:

#include<bits/stdc++.h>
using namespace std;
long long a[100005],n,m;
int main(){cin>>n>>m;for(int i=1;i<=n+m;i++)cin>>a[i];sort(a+1,a+n+m+1);for(int i=1;i<=n+m;i++)cout<<a[i]<<" ";return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/17859.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Golang | Leetcode Golang题解之第102题二叉树的层序遍历

题目&#xff1a; 题解&#xff1a; func levelOrder(root *TreeNode) [][]int {ret : [][]int{}if root nil {return ret}q : []*TreeNode{root}for i : 0; len(q) > 0; i {ret append(ret, []int{})p : []*TreeNode{}for j : 0; j < len(q); j {node : q[j]ret[i] …

Java面试精粹:高级问题与解答集锦(一)

Java 面试问题及答案 1. 什么是Java的垃圾回收机制&#xff0c;它如何工作&#xff1f; 答案&#xff1a; Java的垃圾回收机制是一种自动内存管理功能&#xff0c;用于回收不再被应用程序使用的对象所占用的内存。它通过垃圾收集器&#xff08;Garbage Collector&#xff0c;…

js数据类型显隐式转换

在JavaScript中&#xff0c;数据类型的转换可以分为两种主要类型&#xff1a;显式类型转换&#xff08;Explicit Type Conversion&#xff09;和隐式类型转换&#xff08;Implicit Type Conversion 或 Type Coercion&#xff09;。 显式类型转换&#xff08;Explicit Type Con…

React18+TypeScript搭建通用中后台项目实战02 整合 antd 和 axios

配置路径别名 tsconfig.json {"compilerOptions": {"target": "ES2020","useDefineForClassFields": true,"lib": ["ES2020","DOM","DOM.Iterable"],"module": "ESNext&quo…

磁盘分区和挂载

磁盘分区和挂载 一、磁盘 业务层面&#xff1a;满足一定的需求所是做的特定操作 硬盘是什么以及硬盘的作用 硬盘&#xff1a;计算器的存储设备&#xff0c;一个或者多个磁性的盘片做成&#xff0c;可以在盘片上进行数据的读写 连接方式&#xff1a;内部设备&#xff0c;外…

深度揭秘:蓝海创意云渲染农场的五大特色功能

在当今数字化时代&#xff0c;影视制作、效果图设计等领域对于高质量的渲染需求日益增长。在这个背景下&#xff0c;云渲染平台成为了行业中不可或缺的一部分&#xff0c;它为用户提供了高效、灵活的渲染解决方案。蓝海创意云渲染农场https://www.vsochina.com/cn/render蓝海创…

软件需求分析和软件原型开发是一会事情吗?

软件需求分析和软件原型开发是软件开发过程中的两个重要环节&#xff0c;它们各自承担着不同的任务&#xff0c;但又紧密相连&#xff0c;共同影响着软件项目的成功。下面将详细解释这两个环节的定义、目的以及它们之间的关系。 一、软件需求分析 定义&#xff1a;软件需求分析…

C++学习日记 | LAB 6 static library 静态库

资料来源&#xff1a;南科大 余仕琪 C/C Program Design LINK&#xff1a;CPP/week06 at main ShiqiYu/CPP GitHub 一、本节内容 本节主要介绍静态库和动态库。 1.1 静态库和动态库的概念 静态链接和静态库(也称为存档)是链接器将所有使用的库函数复制到可执行文件的结果。静…

Javascript中的定时器有哪些?他们的区别及用法是什么?

JavaScript 中有几种常用的定时器函数,它们的区别主要在于执行方式和行为: setTimeout(callback, delay):作用:在指定的延迟时间后执行回调函数一次。用法:通常用于延迟执行某些操作。返回值:一个定时器 ID,可用于取消定时器。setInterval(callback, delay):作用:每隔指定的延…

Linux中 “权限设置修改”

目录 一、权限 &#xff08;1&#xff09;权限三大类&#xff1a; &#xff08;2&#xff09;文件的权限&#xff1a; &#xff08;3&#xff09;目录的权限&#xff1a; &#xff08;4&#xff09;用户的角色&#xff1a; 二、文件的权限位 三、修改用户权限 &#xf…

【flutter 双端开发】

flutter 双端开发 开发小细节替换新的logo 开发小细节 替换新的logo 替换双端logo 寻找三方插件 android 打包流程 android 打包流程2

小程序唯品会Authorization sign

声明 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01;wx a15018601872 本文章未…

Python---Matplotlib(2万字总结)【从入门到掌握】

数据可视化 在完成了对数据的透视之后&#xff0c;可以将数据透视的结果通过可视化的方式呈现出来&#xff0c;简单的说&#xff0c;就是将数据变成漂亮的图表&#xff0c;因为人类对颜色和形状会更加敏感&#xff0c;然后再进一步解读数据背后隐藏的价值。在之前的文章中已经…

nacos安装与使用

1.nacos简介与安装 什么是注册中心&#xff08;服务治理&#xff09; 服务注册&#xff1a;服务提供者provider&#xff0c;启动的时候向注册中心上报自己的网络信息 服务发现&#xff1a;服务消费者consumer&#xff0c;启动的时候向注册中心上报自己的网络信息&#xff0c;拉…

JavaScript style 样式属性操作

JavaScript 中可以使用 style 对象来操作元素的样式属性。style 对象是元素的一个属性&#xff0c;通过它可以访问和修改元素的内联样式属性。 要访问元素的样式属性&#xff0c;可以使用以下语法&#xff1a; element.style.property 其中&#xff0c;element 是要操作的元…

centos7防火墙入站白名单配置

firewall-cmd --set-default-zonedropfirewall-cmd --get-active-zone记录下当前激活网卡firewall-cmd --permanent --change-interfaceens33 --zonedrop firewall-cmd --zonedrop --list-all 添加信任的源IP和开放端口 firewall-cmd --permanent --add-source192.168.254.1 -…

【OpenCV】图形绘制与填充

介绍了绘制、填充图像的API。也介绍了RNG类用来生成随机数。相关API&#xff1a; line() rectangle() circle() ellipse() putText() 代码&#xff1a; #include "iostream" #include "opencv2/opencv.hpp"using namespace std; using namespace cv…

ARM64的KASLR分析

基本概念 加载地址&#xff1a;内核解压到物理内存上的物理起始地址 链接地址&#xff1a;内核编译链接后的虚拟起始地址 我们的这篇 文章&#xff0c;介绍了加载地址可以是自动的&#xff0c;也可以是固定的&#xff1b;一般都是物理内存的起始地址 一个偏移 &#xff1b;…

pillow学习3

Pillow库中&#xff0c;图像的模式代表了图像的颜色空间。以下是一些常见的图像模式及其含义&#xff1a; L&#xff08;灰度图&#xff09;&#xff1a;L模式表示图像是灰度图像&#xff0c;每个像素用8位表示&#xff08;范围为0-255&#xff09;&#xff0c;0表示黑色&#…

在flutter initState 方法,触发 setState导致循环执行

在Flutter中&#xff0c;如果你在initState中调用了一个方法&#xff0c;并且这个方法可能导致状态更新&#xff0c;这可能会引起无限循环&#xff0c;因为每次状态更新都会再次调用initState。 为了避免这种情况&#xff0c;你应该检查调用的方法是否会导致状态更新&#xff…