藍橋杯 演算法訓練 C C

2021-10-04 08:13:22 字數 1297 閱讀 3968

問題描述

給定乙個序列,每次詢問序列中第l個數到第r個數中第k大的數是哪個。

輸入格式

第一行包含乙個數n,表示序列長度。

第二行包含n個正整數,表示給定的序列。

第三個包含乙個正整數m,表示詢問個數。

接下來m行,每行三個數l,r,k,表示詢問序列從左往右第l個數到第r個數中,從大往小第k大的數是哪個。序列元素從1開始標號。

輸出格式

總共輸出m行,每行乙個數,表示詢問的答案。

樣例輸入

51 2 3 4 5

21 5 2

2 3 2

樣例輸出42

資料規模與約定

對於30%的資料,n,m<=100;

對於100%的資料,n,m<=1000;

保證k<=(r-l+1),序列中的數<=106。

提交**

#include

#include

using

namespace std;

bool

cmp(

int a,

int b)

;int

main()

for(i =

0; i < x; i++

)printf

("%d\n"

, c[i]);

return0;

}bool

cmp(

int a,

int b)

//倒敘排序

感想

初步體會到sort的優勢所在,清晰記得上一屆區賽的時候在排序上花了很多時間,這次就可以避免了。其實是對題目範圍的誤報,說是1000000的範圍,實際上只有100000的範圍,沒想到誤打誤撞,這題過了,很是驚異。

牢記sort的倒序排序法!!!

問題描述

已知乙個正整數n,問從1~n中任選出三個數,他們的最小公倍數最大可以為多少。

輸入格式

輸入乙個正整數n。

輸出格式

輸出乙個整數,表示你找到的最小公倍數。

樣例輸入

樣例輸出

資料規模與約定

1 <= n <= 106。

提交**

#include

using

namespace std;

intmain()

感想

第一次沒過就是沒有考慮到範圍問題,這時候就強烈推薦 cin 和 cout ,不用考慮輸入輸出的範圍,開始定義好了就ok,很方便。

其次就是題目有點難理解。。。

藍橋杯試題 演算法訓練 Hanoi問題 C C

資源限制 時間限制 1.0s 記憶體限制 512.0mb 問題描述 如果將課本上的hanoi塔問題稍做修改 仍然是給定n只盤子,3根柱子,但是允許每次最多移動相鄰的m只盤子 當然移動盤子的數目也可以小於m 最少需要多少次?例如n 5,m 2時,可以分別將最小的2個盤子 中間的2個盤子以及最大的乙個盤...

藍橋杯VIP試題 演算法訓練 數字遊戲 C C

資源限制 時間限制 1.0s 記憶體限制 256.0mb 問題描述 給定乙個1 n的排列a i 每次將相鄰兩個數相加,得到新序列,再對新序列重複這樣的操作,顯然每次得到的序列都比上一次的序列長度少1,最終只剩乙個數字。例如 3 1 2 4 4 3 6 7 916 現在如果知道n和最後得到的數字sum...

藍橋杯 演算法訓練 Lift and Throw

演算法訓練 lift and throw 時間限制 3.0s 記憶體限制 256.0mb 問題描述 給定一條標有整點 1,2,3,的射線.定義兩個點之間的距離為其下標之差的絕對值.laharl,etna,flonne一開始在這條射線上不同的三個點,他們希望其中某個人能夠到達下標最大的點.每個角色只能...