CF 1154E Two Teams (鍊錶)

2021-10-04 10:40:21 字數 847 閱讀 4402

題目傳送

題意分析:

兩隊輪流選人,每次選分最高的及左右各k個(不相鄰!!!)

可以用陣列模擬鍊錶,每次選完人後,將區間兩端相接

#include

#include

using

namespace std;

const

int maxn =

2e5+5;

typedef pair<

int,

int> pii;

priority_queue q;

int pre[maxn]

;//左

int nxt[maxn]

;//右

int vis[maxn]

;//已被選

int ans[maxn]

;int

main

(void

)int p =1;

while

(q.size()

) ll = i;

//記錄區間左端

cnt =0;

for(i = nxt[u]

; cnt < k && i != n +

1; i = nxt[i]

) rr = i;

//記錄區間右端

pre[rr]

= ll;

//更新指標

nxt[ll]

= rr;

p++;}

for(

int i =

1; i <= n; i++

) cout << ans[i]

;return0;

}

1154 能量項鍊

題目描述 description 在mars星球上,每個mars人都隨身佩帶著一串能量項鍊。在項鍊上有n顆能量珠。能量珠是一顆有頭標記與尾標記的珠子,這些標記對應著某個正整數。並且,對於相鄰的兩顆珠子,前一顆珠子的尾標記一定等於後一顆珠子的頭標記。因為只有這樣,通過吸盤 吸盤是mars人吸收能量的一...

1154 最少步數

時間限制 3秒 記憶體限制 128兆 這有乙個迷宮,有0 8行和0 8列 1,1,1,1,1,1,1,1,1 1,0,0,1,0,0,1,0,1 1,0,0,1,1,0,0,0,1 1,0,1,0,1,1,0,1,1 1,0,0,0,0,1,0,0,1 1,1,0,1,0,1,0,0,1 1,1,0...

codevs 1154 能量項鍊

題目描述 description 在mars星球上,每個mars人都隨身佩帶著一串能量項鍊。在項鍊上有n顆能量珠。能量珠是一顆有頭標記與尾標記的珠子,這些標記對應著某個正整數。並且,對於相鄰的兩顆珠子,前一顆珠子的尾標記一定等於後一顆珠子的頭標記。因為只有這樣,通過吸盤 吸盤是mars人吸收能量的一...