庆祝61:

牛家庄幼儿园为庆祝61儿童节举办庆祝活动,庆祝活动中有一个节目是小朋友们围成一个圆圈跳舞。牛老师挑选出n个小朋友参与跳舞节目,已知每个小朋友的身高h_i。为了让舞蹈看起来和谐,牛老师需要让跳舞的圆圈队形中相邻小朋友的身高差的最大值最小,牛老师犯了难,希望你能帮帮他。
如样例所示:
当圆圈队伍按照100,98,103,105顺时针排列的时候最大身高差为5,其他排列不会得到更优的解

输入描述:

输入包括两行,第一行为一个正整数n(3 ≤ n ≤ 20)
第二行为n个整数h_i(80 ≤ h_i ≤ 140),表示每个小朋友的身高。

输出描述:

输出一个整数,表示满足条件下的相邻小朋友身高差的最大值。

示例:

示例1

输入

4
100 103 98 105

输出

5

分析:

一组数要想相邻差的最大值最小,使得最小的放在中间,大的靠向两边就会达到这种效果,

如 1   2   3   4   5   6   7   8   9,我们可以按照 9   7   5   3   1   2   4   6   8排列,当要围城一个圆形队列时,让两边最大的数相邻即可。

将输入的数接收进数组num中,从索引为2的数开始遍历数组,计算num[i]与num[i-2]的最大差值,记为max,最后在比较max,num[1]-num[0],num[n-1]-num[n-2]的值,更新max,这是max就是相邻小朋友的身高差最大值的最小值。

代码:

import java.util.*;public class Main{public static void main(String[] args){Scanner in = new Scanner(System.in);int n = in.nextInt();int[] num = new int[n];for(int i=0; i<n; i++){num[i] = in.nextInt();}Arrays.sort(num);System.out.println(Arrays.toString(num));int max = 0;for(int i=2; i<n; i+=1){max = Math.max(max,num[i]-num[i-2]);}max = Math.max(Math.max(max,num[n-1]-num[n-2]),num[1]-num[0]);System.out.println(max);}
}

庆祝61-牛客模拟笔试七月场(使圆圈队形中相邻小朋友的身高差的最大值最小的解法)相关推荐

  1. 牛客多校第二场补题(继续罚坐)

    牛客多校第二场(继续罚坐场) Draw Grids ZYT和LBC玩游戏,在4*4的矩阵中,从起点开始,每个人只能连一条直线,且只能在起点或者上一个人的终点位置连上这个位置相邻的一条直线,并且不能形成 ...

  2. 2019牛客多校第一场

    2019牛客多校第一场 题号 题目 知识点 A Monotonic Matrix B Symmetric Matrix C Fluorescent 2 D Two Graphs E Removal F ...

  3. 牛客网java_牛客网笔试Java输入输出救命模版

    被牛客网笔试输入输出坑过的看过来吧! 系统给你的输入文本是这样的,第一行两个数字是 矩阵的 行数 列数,第二行是矩阵搜索起点的坐标,剩下的行是矩阵里面的内容.如果是两个test case 就是这样的文 ...

  4. 【2020年牛客暑假第八场】E题 Enigmatic Partition

    [2020年牛客暑假第八场]E题 Enigmatic Partition 一阶差分+隔项差分 题意 思路 方法一 方法二 Code 反思 题目链接: https://ac.nowcoder.com/a ...

  5. 2021 牛客网笔试总结 01

    文章目录 牛客网笔试 关于TCP/IP网络接口层的描述是错误的 TCP与UDP说法错误的 async await描述错误的 不属于Location对象的属性 BFC js错误类型 flex布局 fle ...

  6. python字符串去重及排序 牛客_2018牛客多校第一场 D.Two Graphs

    题意: n个点,m1条边的图E1,n个点,m2条边的图E2.求图E2有多少子图跟图E1同构. 题解: 用STL的全排列函数next_permutation()枚举映射.对于每一种映射枚举每一条边判断合 ...

  7. 2020 牛客多校第一场

    2020 牛客多校第一场 A. B-Suffix Array 后缀数组的思想:倍增+桶排序的方式找出一串连续序列后缀的大小.虽说正常使用的时候都是字典序,但是只要修改排序方式,也能够达到一个类似的&q ...

  8. 2019牛客多校第九场AThe power of Fibonacci(广义BM)

    2019牛客多校第九场AThe power of Fibonacci(广义BM) 题目大意 求斐波那契数列m次方的前n项和 解题思路 显然,斐波那契的m次方前缀和依然是线性递推,因此考虑用exBM求解 ...

  9. 【2021牛客寒假第五场】B-比武招亲(上)排列组合

    [2021牛客寒假第五场]B-比武招亲(上)排列组合 题意 思路 Code(44MS) 传送门: https://ac.nowcoder.com/acm/contest/9985/B 题意 思路 考 ...

  10. 【2021牛客寒假第五场】C-比武招亲(下)欧拉降幂+多项式求逆预处理伯努利数计算等幂求和

    [2021牛客寒假第五场]C-比武招亲(下)欧拉降幂+多项式求逆预处理伯努利数计算等幂求和 前置技能 题意 思路 Code(715MS) 传送门: https://ac.nowcoder.com/ac ...

最新文章

  1. JavaScript获取鼠标左键选中的内容
  2. POJ1321 棋盘问题(DFS)
  3. Vue packages version mismatch:- vue@2.6.14 - vue-template-compiler@2.6.11解决方法
  4. 2016CCCC天梯--多项式A除以B
  5. 【个人笔记】OpenCV4 C++ 快速入门 02课
  6. python学习之路(3)---列表
  7. 为研究自动驾驶卡车上路可行性,英政府出资810万英镑
  8. 通过软件调整显示器的扩展、复制、显示器输入源
  9. 一个线性四叉树编码的试题
  10. 计算机网络telnet命令作用,telnet命令使用方法详解
  11. java-工具-开源
  12. 服务器硬盘检测系统,服务器RAID硬盘与日志主要检测方法
  13. ImportError: Could not import
  14. 解决Macbook互联网不能共享 因为它是受802.1X保户问题
  15. C++ 获取系统当前时间
  16. 用mysql+php开发网上商城系统
  17. C++ STL函数 map (henu.hjy)
  18. 打印样式CSS的技巧和要点。
  19. 星期五计算机,黑色星期五之夜电脑人
  20. 数据结构PTA 案例6-1.5 旅游规划

热门文章

  1. 有什么软件可以连接到linux系统升级,linux系统和应用程序升级方法
  2. 计算机专业英语朱龙主编,计算机专业英语(高职高专计算机系列)
  3. vscode远程连接与控制使用
  4. 使用IIS 共享文件
  5. 百度可视化工具Sugar简单介绍以及使用说明
  6. CNVD-2020-10487复现(Apache Tomcat文件包含漏洞)
  7. 微软打击盗版的“三部曲”
  8. Excel数据导入___你hold住么(二)
  9. linux udev 禁用u盘,udev自动挂载U盘
  10. windows无管理员权限安装python