C++ 将两个数字替换为给定数组中介于两个数字之间的单个数字?

C++ 将两个数字替换为给定数组中介于两个数字之间的单个数字?,c++,recursion,dynamic-programming,C++,Recursion,Dynamic Programming,问题是我们有一个长度为N的数组和一个随机数X 从数组a中选择任意两个数字,如a、b,并用一个数字(如Y)替换这两个数字,使a假设数组按排序顺序为a1、a2、…、a。所以最小值是a1,最大值是A you may choose a1,a2 and replace with a1. Then after choose a1, a3(as a2 is gone now) and replace by a1. . Similarly you may choose a1, an-1 {a2 to an-2

问题是我们有一个长度为N的数组和一个随机数X


从数组a中选择任意两个数字,如a、b,并用一个数字(如Y)替换这两个数字,使a假设数组按排序顺序为a1、a2、…、a。所以最小值是a1,最大值是A

you may choose a1,a2 and replace with a1. 
Then after choose a1, a3(as a2 is gone now) and replace by a1.
.
Similarly you may choose a1, an-1 {a2 to an-2 is gone now} and replace by a1.

Now you are left with 2 number a1 and an. So a1<=x<=an, ans is yes otherwise two. 
您可以选择a1、a2并替换为a1。
然后在选择a1之后,选择a3(因为a2已经消失),并用a1替换。
.
类似地,您可以选择a1,an-1{a2到an-2现在消失了}并用a1替换。

现在剩下两个数字a1和一个。那么A1是否允许发布在线直播比赛问题?也许您还需要数组中A先于B的约束?如果我正确理解了问题,那么只要X在数组的最小值和最大值之间(每次只需选择y=X),就可以执行此操作。也许你应该举一个例子。X是用来做什么的?X是需要检查是否可以实现的数字。