有n個數,從第二個數開始,要求輸出它前面的數中與當前數的最小的差值,以及那個數的下標。如果差值一樣,輸出較小的那個數的下標。
比如1 5 3 從5開始,5前面只有1,與 1的差值為4,所以輸出4 1
對於3,和1,5的差值都為2,但是1更小,輸出1的小標,即輸出2 1
這題可以用pair也可以用結構體,用結構體需要自定義排序方式,和優先佇列定義結構體排序一樣。
先要插入乙個極大值和乙個極小值,作為邊界。然後每次輸入乙個數,就找出它的前驅和後繼,比較與前驅的差和與後繼的差的大小。輸出小的。然後再把這個數插入set
#pragma warning(disable:4996)
#include#include#include#include#include#include#include#include#includeusing namespace std;
typedef long long ll;
struct node
//從小到大排序
};setst;
int main()
st.insert(x);//插入x
} return 0;
}
Acwing136 臨值查詢
有兩種做法,一種是用set,將該值裝入容器,然後用find查詢該值的位置,比較一下下乙個和前乙個的與該值的差值,選差值小的那個,相等選前面那個,注意別越界.include using namespace std const int max val 2e9 setint,int a intmain i...
python對集合set的操作
python的set和其他語言類似,是乙個無序不重複元素集,基本功能包括關係測試和消除重複元素.集合物件還支援union 聯合 intersection 交 difference 差 和sysmmetric difference 對稱差集 等數 算,sets 支援 x in set,len set ...
SELECT與SET對變數賦值
sql server 中對已經定義的變數賦值的方式用兩種,分別是 set 和 select。對於這兩種方式的區別,sql server 聯機叢書中已經有詳細的說明,但很多時候我們並沒有注意,其實這兩種方式還是有很多差別的。sql server推薦使用 set 而不是 select 對變數進行賦值。當...