原创 問題 B: 打印極值點下標

題目描述 在一個整數數組上,對於下標爲i的整數,如果它大於所有它相鄰的整數,或者小於所有它相鄰的整數,則稱爲該整數爲一個極值點,極值點的下標就是i。 輸入 每個案例的輸入如下: 有2×n+1行輸入:第一行是要處理的數組的個數n; 對其餘2

原创 問題 A: 求第k大數

題目描述   給定一個長度爲n(1≤n≤1,000,000)的無序正整數序列,以及另一個數k(1≤k≤1,000,000)(關於第k大的數:例如序列{1,2,3,4,5,6}中第3大的數是4。) 輸入 第一行兩個正整數m,n。 第二行爲n

原创 問題 D: 二分遞歸快排(Qsort) [2*]

題目描述 二分遞歸快排(Qsort)  用二分遞歸的方法實現快排  輸入:第一行一個數據n,表示有n個數要排序。接下來n行每行一個<=10^7的整數。  輸出:n行,由小到大排序後的數據  數據規模:n<=10^5  思考:兩個遞歸都會被

原创 問題 A: 找x

題目描述 輸入一個數n,然後輸入n個數值各不相同,再輸入一個值x,輸出這個值在這個數組中的下標(從0開始,若不在數組中則輸出-1)。 輸入 測試數據有多組,輸入n(1<=n<=200),接着輸入n個數,然後輸入x。 輸出 對於每組輸入,請

原创 問題 C: 快速排序 qsort [2*]

題目描述 輸入n個整數,用快速排序的方法進行排序  Input 第一行數字n 代表接下來有n個整數  接下來n行,每行一個整數  Output Output  升序輸出排序結果  每行一個數據  Sample Input 5 12 18

原创 問題 C: 查找

題目描述 輸入數組長度 n  輸入數組      a[1...n]  輸入查找個數m  輸入查找數字b[1...m]  輸出 YES or NO  查找有則YES 否則NO 。 輸入 輸入有多組數據。 每組輸入n,然後輸入n個整數,再輸入

原创 問題 F: 迷瘴

題目描述 小明正在玩遊戲,他控制的角色正面臨着幽谷的考驗—— 幽谷周圍瘴氣瀰漫,靜的可怕,隱約可見地上堆滿了骷髏。由於此處長年不見天日,導致空氣中佈滿了毒素,一旦吸入體內,便會全身潰爛而死。 幸好小明早有防備,提前備好了解藥材料(各種濃度

原创 問題 D: Repair the Wall

題目描述   Long time ago , Kitty lived in a small village. The air was fresh and the scenery was very beautiful. The only t

原创 問題 A: 最大連續子序列

題目描述 給定K個整數的序列{ N1, N2, ..., NK },其任意連續子序列可表示爲{ Ni, Ni+1, ..., Nj },其中 1 <= i <= j <= K。最大連續子序列是所有連續子序列中元素和最大的一個,例如給定序列

原创 問題 C: 合唱隊形

題目描述 N位同學站成一排,音樂老師要請其中的(N-K)位同學出列,使得剩下的K位同學不交換位置就能排成合唱隊形。 合唱隊形是指這樣的一種隊形:設K位同學從左到右依次編號爲1, 2, …, K,他們的身高分別爲T1, T2, …, TK,

原创 問題 A: 裝箱問題

題目描述 【問題描述】  有一個箱子的容量爲V(V爲正整數,且滿足0≤V≤20000),同時有n件物品(0的體積值爲正整數。  要求從n件物品中,選取若干裝入箱內,使箱子的剩餘空間最小。  輸入:1行整數,第1個數表示箱子的容量,第2個數

原创 問題 A: 最長上升子序列

題目描述 一個數列ai如果滿足條件a1 < a2 < ... < aN,那麼它是一個有序的上升數列。我們取數列(a1, a2, ..., aN)的任一子序列(ai1, ai2, ..., aiK)使得1 <= i1 < i2< ... <

原创 算法筆記

第4章:入門篇(2)——算法初步 4.2 散列 問題 A: 誰是你的潛在朋友 第11章:動態規劃 問題 A: 最大連續子序列 問題 A: 最長公共子序列 問題 A: 最長上升子序列 問題 A: 裝箱問題 問題 C: 合唱隊形

原创 問題 A: 誰是你的潛在朋友

題目描述     “臭味相投”——這是我們描述朋友時喜歡用的詞彙。兩個人是朋友通常意味着他們存在着許多共同的興趣。然而作爲一個宅男,你發現自己與他人相互瞭解的機會 並不太多。幸運的是,你意外得到了一份北大圖書館的圖書借閱記錄,於是你挑燈熬

原创 排序-計數排序

參考文獻:什麼是計數排序?