2019牛客寒假演算法基礎集訓營1C

2021-10-02 13:07:58 字數 981 閱讀 5212

給定乙個長度為n

nn的序列,沒乙個值表示第i

ii個星球的能量指數為p

ip_i

pi​,飛船當前耐力指數為第乙個星球的能量指數,當星球i

ii能到達星球j

jj當且僅當p

i>pj

p_i > p_j

pi​>pj

​,假設當前飛船的耐久值為t

tt,當飛船到達星球j

jj時船的耐久值會變為t⊕p

jt \oplus p_j

t⊕pj

​。(1≤n

,∀pi

≤3000

1\leq n,∀p_i \leq 3000

1≤n,∀p

i​≤3

000)

​現在求飛船到達第n

nn個星球的最大耐久值,到達不了或者耐久值為0

00都輸出−1-1

−1。顯然,此題就是判斷當前狀態是否可達n

nn,那麼bfs

bfsbf

s即可。

ps:去年比賽的時候是用的sb 01揹包寫的,資料水了。

#include

using

namespace std;

#define ll long long

int v[

3005

], book[

10000];

queue<

int> q;

intmain()

book[v[1]

]=1;

q.push

(v[1])

;int ans =0;

while

(!q.

empty()

)if(i != n && book[nxt]==0

)}}}

if(ans ==0)

else

return0;

}``

牛客寒假演算法基礎集訓營

首先看到這個題目資料範圍就可以知道這不是乙個可以暴力過的題。所以應該要推乙個結論。我們可以將這個同學的一來一回看成一組,那麼就可以理解為乙個來回中n可以減少n m 1 個人。那麼我們現在要讓所有人都進去,那就是看n m 1 的數量。但是有可能存在一些情況,就是說當你的倒數第二組中的回來的那趟使得n變...

牛客寒假演算法基礎集訓營4

a 第一行是乙個正偶數 n,表示石子的堆數。第二行是 n 個正整數 a1,a2,ana1,a2,an,表示每堆石子的個數。博弈,由於每次取石子只能取最左一堆或最右一堆,且必須取完,那麼選擇奇數和和偶數和中比較大的一項,但是堆數為偶數,這無論如何先手贏。所以直接輸出就好了。include define...

牛客寒假演算法基礎集訓營1

菜雞乙個,只做出兩道,先掛一下,剩下的會了繼續更 1 小a的計算器 題目描述 小a的數學基礎實在太差了,以至於他只會用計算器算數。他的計算器比較特殊,只有 即加減乘除 四種運算。經過一番周折,小a終於算出了他想要的數,但是他卻忘記了最初的數是什麼。不過幸運的是他記下了整個操作序列,他想請你幫他算出最...