在给定范围内找到一个不同的对(x,y),以便x在C ++中将y分开
在这里,我们将看到一个有趣的问题,我们将找到一个对(x,y),其中x和y在范围内,因此l<=x,y<=r,该对将具有一个属性,x的值除以y。如果有多对可用,则仅选择一对。
如果我们获得下限l和2l的值,则可以在O(1)时间内解决此问题。我们知道y/x的最小值可以是2,并且如果该范围内存在更大的值,则2将会在范围内。如果我们增加x,它也会增加2x,因此l和2l将是落入给定范围内的最小对。
示例
#include<iostream>
using namespace std;
void getPair(int l, int r) {
int x = l;
int y = 2 * l;
cout << "(" << x << ", " << y << ")" << endl;
}
int main() {
int l = 3, r = 6;
getPair(l, r);
}输出结果
(3, 6)
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短