大理石在哪?劉汝佳:《演算法競賽入門經典》p108
題目:
現有n個大理石,每個大理石上寫了乙個非負整數。首先把個個數從小到大排序,然後回答q個問題。樣例輸入:每個問題問是否有乙個大理石上寫著某個整數x,如果是還要回答那個大理石上寫著x。
排序後的大理石從左到右編號為1~n。
4 1樣例輸出:2 3 5 1
5 2
1 3 3 3 1
2 3
case# 1:分析:略。5 found at 4
case# 2:
2 not found
3 found at 3
**:#include#includeusing namespace std;
const int maxn=10000;
int main()
stu[5]=,,};
bool comp1(int i,int j)
bool co***(student &x,student &y)//多看兩遍
int main()
; //sort(a,a+6,comp1);
sort(a,a+6,comp2);
for(i=0;i<6;i++)
cout《二、lower_bound函式:在給定區間內查詢 大於等於x的第乙個位置。(為二分查詢)(upper_bound,亦然)
參考文章:
sort:
lower_bound:
qsort函式和sort函式
做acm題的時候,排序是一種經常要用到的操作。如果每次都自己寫個冒泡之類的o n 2 排序,不但程式容易超時,而且浪費寶貴的比賽時間,還很有可能寫錯。stl裡面有個sort函式,可以直接對陣列排序,複雜度為n log2 n 使用這個函式,需要包含標頭檔案 include 這個函式可以傳兩個引數或三個...
sort函式和sorted函式
b 1 2,6 2,7 9,5 print b.sort reverse true print b 1 none 7結果表明sort函式不會產生新列表,返回值為none 會改變原來物件的結構 b 1 2,6 2,7 9,5 c set b print b print c print list sor...
排序函式qsort和sort
qsort函式 sort函式 精心整理篇 文件 先說明一下qsort和sort,只能對連續記憶體的資料進行排序,像鍊錶這樣的結構是無法排序的。首先說一下,qsort qsort 基本快速排序的方法,每次把陣列分成兩部分和中間的乙個劃分值,而對於有多個重複值的陣列來說,基本快速排序的效率較低,且不穩定...