1.簡單題目敘述
蒜頭君給出若干個整數,詢問其中是否有一對數的和等於給定的數。
輸入格式 共三行: 第一行是整數 n(0第二行是 n 個整數。整數的範圍是在 0 到 2×10 ^8 之間。
第三行是乙個整數 m(0≤m≤2 30 ),表示需要得到的和。
輸出格式 若存在和為 m 的數對,輸出兩個整數,小的在前,大的在後,中間用單個空格隔開。若有多個數對滿足條件,選擇數對中較小的數更小的。若找不到符合要求的數對,輸出一行"no"。
輸出時每行末尾的多餘空格,不影響答案正確性
樣例輸入
42 5 1 4
6樣例輸出
1 5
#include
#include
using namespace std;
const
int len =
1e5+5;
int ar[len]
;int n;
long
long m;
int ans;
bool binary_search
(int l ,
int r ,
int tem)
}return false;
}int
main()
}if(i == n +1)
printf
("no\n");
return0;
}
二分 水題整理
感覺自己現在的水平太窪了,連二分這種題都要調好久。感覺二分總是寫不對啊,我真是太水了。在n個數之中插入k個數,使得相鄰的兩個數之間的差值的最大值最小。像這種最大值最小型別的題目,都是考慮使用二分策略 但是這道題我在第一次做的時候卻想錯了,我使用的貪心,我將相鄰的兩個數之間的差值進行排序,然後每次選出...
openjudge 和為給定數 二分查詢
07 和為給定數 總時間限制 1000ms 記憶體限制 65536kb 描述 給出若干個整數,詢問其中是否有一對數的和等於給定的數。輸入 共三行 第一行是整數n 0 n 100,000 表示有n個整數。第二行是n個整數。整數的範圍是在0到10 8之間。第三行是乙個整數m 0 m 2 30 表示需要得...
poj 3122 二分水題
題意不難 有n塊高度都為1但底面半徑為r不等的圓柱體乳酪,作者邀請了f個朋友參加了他的party,他要把這些乳酪平均分給f 1人,每個人分得乳酪的體積必須相等 這個值是確定的 形狀就沒有要求。現在要你求出所有人都能夠得到的最大塊乳酪的體積是多少 直接二分即可 下界為0,即每人都分不到pie 上界為m...