NOIP CSP 2019提高組 格雷碼

2021-10-01 02:34:59 字數 525 閱讀 4473

qaq…

我們直接分兩個情況討論,看乙個第n個格雷碼第k個是從上個格雷碼正序+0還是逆序+1來的,然後不停的遞迴就行了,需要注意的是,我們預設的順序是順序,在第二個情況裡需要算出這個串在正序裡排多少

還有就是需要開unsigned long long

題目鏈結

#include

#include

#include

#define ull unsigned long long

inline ull ksm

(ull x,ull y)

return ans;

}void

dfs(ull n,ull k)

ull s=

ksm(

2,n-1)

-1;//printf("%llu %llu\n",s,k);

if(k<=s)

else

}inline ull read()

intmain()

NOIP2019提高組模擬 購物(題解)

強烈譴責 這道題不符合生活常識,優惠卷面額的作用竟然不是扣多少錢的而是扣到多少錢,巨坑!關鍵是樣例還能過,mmp 題解 這道題可以採用貪心的思想,把優惠了的和沒優惠的所以合成乙個陣列在一起算,一起sort一下,然後就要堅持乙個商品只能買一次的原則,將每個要選的優惠後的 標記一波,不選它的原來 而且要...

NOIP2023年提高組複賽上機試題

通常,人們習慣將所有 n 位二進位制串按照字典序排列,例如所有 2 位二進位制串按字典序從小到大排列為 00,01,10,11。格雷碼 gray code 是一種特殊的 n 位二進位制串排列法,它要求相鄰的兩個二進位制串間恰好有一位不同,特別地,第乙個串與最後乙個串也算作相鄰。所有 2 位二進位制串...

noip2019提高組 Emiya 家今天的飯

題面 這裡思路 一道很妙的dp題,首先可以發現至多有一種主要食材被選超過t 2次,所以考慮用容斥 合法方案 總方案數 每行的不合法方案數。顯然 求出確定的某一列不合法的方案數比求出每一行都合法的方案數要簡單得多 範圍減小,限制更明確 這也是容斥的基本思路 正難則反.根據這個可以列出樸素的dp轉移方程...