关于数学定理证明,也有高下之分。最暴力的证明方法是“构造性证明”,即当需要证明某种解存在时,直接把解构造出来,而不是仅通过推理证明解之存在。
下面有一个定理: 设ai(i=1,...,5)均为正实数。则一定存在4个互不相同的下标i、j、k、l,使得 |ai/aj - ak/al| < 1/2。 作为程序员,就请你编写程序构造出正确的下标,验证这个结论。
数据范围 10^-10≤每个数字≤10^10
输入一行中顺序给出5个正实数。为保证计算中不产生浮点溢出,我们令输入的数字在[10^-10,10^10]区间内,且小数点不超过10位小数。
在一行中首先输出使得定理结论成立的下标有多少套,随后输出最小的一套下标。数字间以1个空格分隔,行尾不得有多余空格。
3.12 5.27 0.0007 9825.4413 10
18 1 4 3 2
中国电子学会C语言三级