給定乙個長度為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終於算出了他想要的數,但是他卻忘記了最初的數是什麼。不過幸運的是他記下了整個操作序列,他想請你幫他算出最...