time limit(ms): 2500 memory limit(kb): 65535 submission: 329 accepted: 18
問題描述
又是乙個資料處理題(>_<)。還是直接看input吧。
輸入一組測試例項。 line 1:兩個數n, m (1 <= n <= 1000000, 1 <= m <= 100000),n表示數字個數,m表示查詢次數。 line 2:包含n個整數a(i)(0 <= a(i) <= 1000000000)。兩個數之間以空格隔開。 接下來m行:每行包含兩個整數a,b(1 <= a <= 2, -1000000000 <= b <= 1000000000)。表示一次查詢。當a = 1時,輸出n個數中比b小的數的最大值。當a = 2時,輸出n個數中比b大的數的最小值。如果不存在滿足條件的數,則輸出-1。
輸出每於每一次查詢,輸出答案,每個答案佔一行。
樣例輸入
5 21 2 3 3 5
1 32 5
樣例輸出2-1
hint
scpc_zhangjian
#include #include#include
#include
using
namespace
std;
#define inf 0x7fffffff
#define n 1000010
intn,m;
inta[n];
int low_bound(int
k)
returnl;}
int up_bound(int
k)
returnl;}
intmain()
sort(a+1,a+n+1); //
逗比了、沒排序、一直wa、受不了= =
while(m--)
if(op==1
)
else
}return0;
}
最小的最大
二分答案與高中學習的二分法相類似。對於在區間內單調遞增的函式,通過判讀f x 是否滿足條件,逐步縮小我們的求解範圍。二分答案的框架大致是 while l 1 intmid l r 1 2 if judge mid else 此類問題需要注意的是二分的邊界問題 二分答案通常可以解決最大情況的最小值 最...
swustoj 1157 n個數的最小公倍數
swustoj 1157 n個數的最小公倍數 題目描述 求n個數的最小公倍數。即歐幾里得多次使用輾轉相除法 如下 include include include include include include include include include include using namespa...
簡單的最大最小問題
例表tb id price netprice 1 8.00 20.00 2 10.00 5.00 3 0.00 3.00 我想要查出price與netprice之間大的列 比如查出如下資料 id newprice 1 20.00 2 10.00 3 3.00 sql語句要怎麼寫?create tab...