題解 CSP S2019初賽 取石子

2021-10-09 22:23:43 字數 949 閱讀 3112

(取石子)alice和bob兩個人在玩取石子遊戲。他們制定了nn條取石子的規則,第ii條規則為:如果剩餘石子的個數大於等於a[i]a[i]且大於等於b[ilb[il, 那麼他們可以取走b[i]b[i]個石子。他們輪流取石子。如果輪到某個人取石子, 而他無法按照任何規則取走石子,那麼他就輸了。一開始石子有mm個。請問先取石子的人是否有必勝的方法?

有兩種做法

code:

暴力

#pragma gcc optmize("-ofast")

#include

#define maxn 1010

#define ull unsigned long long

using

namespace std;

int n, m, a[maxn]

, b[maxn]

, dp[

1010];

inline

intread()

intmain()

puts

(dp[m %65]

?"win"

:"loss");

return0;

}

正解

#include

#define maxn 1010

#define ull unsigned long long

using

namespace std;

int n, m, a[maxn]

, b[maxn]

;ull status, trans;

bool win;

inline

intread()

intmain()

puts

(win ?

"win"

:"loss");

return0;

}

CSP S 2019模擬 題解

傳送門 很顯然的考慮把每個質因子給壓到dpd p裡但是有很多指數為0 1 0 1的質因子的情況 考慮f i f i 為強制選i i的情況 那麼s i f i s i 1 s i f i 1 s i f i s i 1 s i f i 1 這樣記字首和更新就可以了 這樣只需要壓6 6個質因子就可以了 ...

CSP S2019部分題解

這其實是某年的一道初賽題,但筆者刷初賽的時候嫌太麻煩了沒去看.然鵝它考了,這倒無所謂,d1t1 難度還是做得出來的.通過觀察構造方法,我們可以發現,乙個有若干位的格雷碼一定是從最高層起每一層都去掉乙個高位,最後得到空串.我們還可以發現,乙個格雷碼在某一層應該去掉的高位是 0 還是 1 只與它位於該層...

CSP S 2019 遊記 完結

day 12 to day 5 不知道哪根筋不對了,臨近csp,考試居然天天寫掛暴力,心態一天比一天 於是為了練碼力 退役前留個紀念,開始寫各種大模擬和資料結構 豬國殺寫了三天,總耗時6h 線段樹的資料結構題寫了四天,總耗時9h splay的資料結構題 不好意思我太懶了 csp應該不會考平衡樹所以不...