C++题解(31) 2025顺德一中少科院信息学创新班(四期)考核:U537296 青蛙的距离 题解

(本人参与了这次考核)

题目背景

有n个池塘,每个池塘中有m只青蛙。这里的青蛙很奇怪,同一个池塘的青蛙喜欢排成一列,并且他们的位置都是有序的。 对于第i列的青蛙,他们分别在第a[i]个位置。 青蛙的距离定义为:从两个不同池塘中选择两只青蛙,他们的位置分别是x、y,那么他们的距离可以定义为位置的绝对值|x-y|。 请范围最大的青蛙距离。

题目描述

输入格式

第一行为一个正整数,表示n个池塘。

接下来有n*2行,每两行为一个池塘的情况。

一行是该池塘有m只青蛙,下一行是该池塘中m只青蛙的位置。

输出格式

一个正整数,表示青蛙的最大距离。

输入输出样例

输入 #1

3
3
1 2 3
2
4 5
3
1 2 3

输出 #1

4

说明/提示

样例1解析: 从第一个池塘求去第一只青蛙的位置,第二个池塘中取最后一只青蛙的位置。|1-5| = 4为最大的距离。

数据范围: 2 <= n <= 1e5

1 <= m <= 500

-1e4 <= a[i] <= 1e4

a[i] 都是升序

所有数组的数加起来不超过1e5

参考答案

#include <iostream> 
#include <math.h>
#include <string.h> 
using namespace std; 
int main() 
{ 	
	int max=-100,min=10000,t,n,a;
	cin>>t;
	while(t--)
	{
		cin>>n;
		for(int i=1;i<=n;i++)
		{
			cin>>a;
			if(a<min)min=a;
			if(a>max)max=a;
		}
	}
	cout<<max-min;
	return 0; 
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值