7-4 天梯赛的善良

2023-12-17 06:28
文章标签 天梯 善良

本文主要是介绍7-4 天梯赛的善良,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

天梯赛是个善良的比赛。善良的命题组希望将题目难度控制在一个范围内,使得每个参赛的学生都有能做出来的题目,并且最厉害的学生也要非常努力才有可能得到高分。

于是命题组首先将编程能力划分成了 106 个等级(太疯狂了,这是假的),然后调查了每个参赛学生的编程能力。现在请你写个程序找出所有参赛学生的最小和最大能力值,给命题组作为出题的参考。

输入格式:

输入在第一行中给出一个正整数 N(≤2×104),即参赛学生的总数。随后一行给出 N 个不超过 106 的正整数,是参赛学生的能力值。

输出格式:

第一行输出所有参赛学生的最小能力值,以及具有这个能力值的学生人数。第二行输出所有参赛学生的最大能力值,以及具有这个能力值的学生人数。同行数字间以 1 个空格分隔,行首尾不得有多余空格。

输入样例:

10
86 75 233 888 666 75 886 888 75 666

输出样例:

75 3
888 2

代码示例: 

#include<iostream>
using namespace std;
int main(){int n;cin>>n;int i;int a[n];for(i=0;i<n;i++){cin>>a[i];}int min=0;int max=0;int countmin=1;int countmax=1;for(i=1;i<n;i++){if(a[i]>a[max]){max=i;countmax=1;}if(a[i]<a[min]){min=i;countmin=1;}if(a[i]==a[max]&&i!=max){countmax++;}if(a[i]==a[min]&&i!=min){countmin++;}}cout<<a[min]<<' '<<countmin<<endl;cout<<a[max]<<' '<<countmax;
}

代码思路:

首先定义一个整数变量n,用来表示要输入的数组的长度,然后从标准输入读取n的值。
然后定义一个长度为n的整数数组a,用来存储输入的数组元素(能力值),然后用一个for循环从标准输入读取n个整数,依次存入数组a中。
接着,定义四个整数变量min,max,countmin和countmax,分别用来表示数组中最小值的下标,最大值的下标,最小值出现的次数和最大值出现的次数,初始化为0,0,1,1。
然后,用另一个for循环遍历数组a,从第二个元素开始,比较每个元素和当前的最小值和最大值,如果发现更小的元素,就更新min和countmin,如果发现更大的元素,就更新max和countmax,如果发现相等的元素,就增加相应的计数器。
最后,输出数组中的最小值和最小值出现的次数,以及最大值和最大值出现的次数,用空格分隔,换行结束。

此题考察的就是数据的存储遍历,题目看起来复杂,其实思路实现起来很容易。

这篇关于7-4 天梯赛的善良的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/503412

相关文章

显卡天梯图(2024年9月版),游戏性能/生产力性能榜单

​原文地址(高清无水印原图/持续更新/含榜单出处链接): >>> 2024年9月显卡天梯图 <<< 2024年9月4日更新日志:更新所有显卡天梯图至9月/最新数据;移除Technical显卡榜单;新增OpenCL显卡性能榜单(含专业卡、计算卡、车机等)。 2024年8月2日更新日志:更新并拓展3DMark显卡榜单长度至150位;更新并拓展Technical显卡榜单至139位;

学会在善良中带点锋芒,才能抵抗住命运的搓磨,把自己当成反派来养

一、当我们凶狠地对待这个世界时,这个世界突然变得温文尔雅了。 毕竟,人生就是一场充满规则的游戏,适时的展现原则和底线,不仅能进退自如,亦是对自我的一种保护。 与其活在别人的眼光里,不能快意做自自己,不如用不好惹的盔甲来保护自己 二,不内耗,不卑不亢走出情绪陷阱你听过内耗型人格吗? 内耗型人格通常指的是那种倾向于过度反思,内心挣扎和消耗精力的人格类型。 具有这种人格的我们可能会过度分析事情

PTA-天梯计划-比较大小

L1-010 比较大小 (10分) 本题要求将输入的任意3个整数从小到大输出。 输入格式: 输入在一行中给出3个整数,其间以空格分隔。 输出格式: 在一行中将3个整数从小到大输出,其间以“->”相连。 输入样例: 4 2 8 输出样例: 2->4->8 用了最笨的方法。。 不知道为什么有一项不正确。。。? #include<iostream>using namespace std;

pta 天梯赛 7-2 装箱问题 (20 分)day6

假设有N项物品,大小分别为s1​​ 、s​2 、…、si 、…、s​N,其中s​i为满足1≤s​i≤100的整数。要把这些物品装入到容量为100的一批箱子(序号1-N)中。装箱方法是:对每项物品, 顺序扫描箱子,把该物品放入足以能够容下它的第一个箱子中。请写一个程序模拟这种装箱过程,并输出每个物品所在的箱子序号,以及放置全部物品所需的箱子数目。 输入格式: 输入第一行给出物品个数N(≤1000

pta 天梯赛 7-9 有理数加法 (15 分)day8-1

本题要求编写程序,计算两个有理数的和。 输入格式: 输入在一行中按照a1/b1 a2/b2的格式给出两个分数形式的有理数,其中分子和分母全是整形范围内的正整数。 输出格式: 在一行中按照a/b的格式输出两个有理数的和。注意必须是该有理数的最简分数形式,若分母为1,则只输出分子。 输入样例1: 1/3 1/6 输出样例1: 1/2 输入样例2: 4/3 2/3 输出样例2: 2 #in

pta 天梯赛 7-8 找出总分最高的学生 (15 分)day8-1

给定N个学生的基本信息,包括学号(由5个数字组成的字符串)、姓名(长度小于10的不包含空白字符的非空字符串)和3门课程的成绩([0,100]区间内的整数),要求输出总分最高学生的姓名、学号和总分。 输入格式: 输入在一行中给出正整数N(≤10)。随后N行,每行给出一位学生的信息,格式为“学号 姓名 成绩1 成绩2 成绩3”,中间以空格分隔。 输出格式: 在一行中输出总分最高学生的姓名、学号和

pta 天梯赛 7-7 计算职工工资 (15 分)day8-1

给定N个职员的信息,包括姓名、基本工资、浮动工资和支出,要求编写程序顺序输出每位职员的姓名和实发工资(实发工资=基本工资+浮动工资-支出)。 输入格式: 输入在一行中给出正整数N。随后N行,每行给出一位职员的信息,格式为“姓名 基本工资 浮动工资 支出”,中间以空格分隔。其中“姓名”为长度小于10的不包含空白字符的非空字符串,其他输入、输出保证在单精度范围内。 输出格式: 按照输入顺序,每行

pta 天梯赛 7-5 时间换算 (15 分)day8-1

本题要求编写程序,以hh:mm:ss的格式输出某给定时间再过n秒后的时间值(超过23:59:59就从0点开始计时)。 输入格式: 输入在第一行中以hh:mm:ss的格式给出起始时间,第二行给出整秒数n(<60)。 输出格式: 输出在一行中给出hh:mm:ss格式的结果时间。 输入样例: 11:59:40 30 输出样例: 12:00:10 #include <stdio.h>#inc

pta 天梯赛 7-3 字符串转换成十进制整数 (15 分)day8-1

输入一个以#结束的字符串,本题要求滤去所有的非十六进制字符(不分大小写),组成一个新的表示十六进制数字的字符串,然后将其转换为十进制数后输出。如果在第一个十六进制字符之前存在字符“-”,则代表该数是负数。 输入格式: 输入在一行中给出一个以#结束的非空字符串。 输出格式: 在一行中输出转换后的十进制数。题目保证输出在长整型范围内。 输入样例: ±P-xf4±1!# 输出样例: -3905

pta 天梯赛 7-6 求整数序列中出现次数最多的数 (15 分)day8-1

本题要求统计一个整型序列中出现次数最多的整数及其出现次数。 输入格式: 输入在一行中给出序列中整数个数N(0<N≤1000),以及N个整数。数字间以空格分隔。 输出格式: 在一行中输出出现次数最多的整数及其出现次数,数字间以空格分隔。题目保证这样的数字是唯一的。 输入样例: 10 3 2 -1 5 3 4 3 0 3 2 输出样例: 3 4 #include <stdio.h>#in