描述 在一个非降序列中,查找与给定值最接近的元素。
输入
第一行包含一个整数n,为非降序列长度。1 <= n <= 100000。
第二行包含n个整数,为非降序列各元素。所有元素的大小均在0-1,000,000,000之间。
第三行包含一个整数m,为要询问的给定值个数。1 <= m <= 10000。
接下来m行,每行一个整数,为要询问最接近元素的给定值。所有给定值的大小均在0-1,000,000,000之间。
输出
m行,每行一个整数,为最接近相应给定值的元素值,保持输入顺序。若有多个值满足条件,输出最小的一个。
样例输入
3 2 5 8 2 10 5
样例输出
8 5
描述
有函数: f(x) = x5 - 15 * x4+ 85 * x3- 225 * x2+ 274 * x - 121 已知 f(1.5) > 0 , f(2.4) < 0 且方程 f(x) = 0 在区间 [1.5,2.4] 有且只有一个根,请用二分法求出该根。
输入
无。
输出
该方程在区间[1.5,2.4]中的根。要求四舍五入到小数点后6位。
样例输入
无
样例输出
不提供
描述
输入n个数,从小到大将它们输出,重复的数只输出一次。保证不同的数不超过500个。
输入
第一行是一个整数n。1 <= n <= 100000。 之后n行,每行一个整数。整数大小在int范围内。
输出
一行,从小到大不重复地输出这些数,相邻两个数之间用单个空格隔开。
样例输入
5 2 4 4 5 1
样例输出
1 2 4 5
描述
给出若干个整数,询问其中是否有一对数的和等于给定的数。
输入
共三行: 第一行是整数n(0 < n <= 100,000),表示有n个整数。 第二行是n个整数。整数的范围是在0到10^8之间。 第三行是一个整数m(0 <= m <= 2^30),表示需要得到的和。
输出
若存在和为m的数对,输出两个整数,小的在前,大的在后,中间用单个空格隔开。若有多个数对满足条件,选择数对中较小的数更小的。若找不到符合要求的数对,输出一行No。
样例输入
4 2 5 1 4 6
样例输出
1 5
提示∶先从小到大排序。设和为sum,顺序搜索第一个数x,二分查找sum-x,如果sun-x存在那么就break;O(nlogn)的算法复杂度,可以应付十万规模数据。
4题 | 被引用1次