给定若干个数,问能不能排成一个环,使得每一个数小于左右相邻两数之和

it2025-04-29  12

                                                                                                                             点击此处返回总目录

 

【题目】

给定若干个数,问能不能排成一个环,使得对于每一个数,小于左右相邻两数之和。

 

 

【方法】

1. 首先按照从小到大排序,得到x1<x2<x3<...<x(n-2)<x(n-1)<xn。

2. 如果xn>=x(n-2)+x(n-1),则说明xn太大了,怎么排都不可能让xn小于两边的数之和,所以结果为NO。

    否则,为YES。因为可以这样排:x1,  x2,  x3,   ...  ,  x(n-2),   xn,   x(n-1)  ,即:把排序后的最后两个数交换一下位置。

 

 

【代码】

 

【结果】

 

 

 

 

最新回复(0)