牛客練習賽 生涯回憶錄(dfs,組合數,思維)

2021-10-10 18:13:42 字數 1154 閱讀 1833

題意:給定n<=1e5個數字,求所有區間的mex值之和。

題解:很模板的一道題目了,我怎麼就想了那麼久??第一題都錯了5發,看來我還是不夠平常心對待比賽emmmm。唉什麼時候才能懂得?

1.討論不選1 

選1(不選2 ,選2 ..........)

唉,遞迴就遞迴,怎麼就盲目遞迴,明知道是**錯了(討論方式總數的地方)。仔細一思考就出來了

**:

#include #define ll long long

#define ld double

#define pi acos(-1)

#define pb push_back

#define mst(a, i) memset(a, i, sizeof(a))

#define pll pair#define fi first

#define se second

#define mp(x, y) make_pair(x, y)

#define rep(i, a, n) for (ll i = a; i <= n; i++)

#define per(i, n, a) for (ll i = n; i >= a; i--)

#define dbg(x) cout << #x << "===" << x << endl

using namespace std;

templatevoid read(t &x)while(isdigit(c))x=res*f;}

const ll maxn = 5e5 + 10;

const ll mod = 20000311;

ll n,a[maxn],b,sum[maxn],mul[maxn];

ll qpow(ll a, ll p, ll mod)return ans;}

ll dfs(ll x)

int main()

rep(i,0,n+5) mul[i]=1;

rep(i, 1, n + 5)

ll ans = 0;

ans = dfs(1);

ans%=mod;

cout << ans << endl;

}return 0;}/*

input:::

output:::

*/

牛客練習賽73 C 生涯回憶錄 組合數學

傳送門 考慮列舉貢獻為i ii的方案數有多少種 貢獻為i ii,那麼 1,i 1 1,i 1 1,i 1 每種數字至少都選了乙個 至少選乙個只需要所有可能減1 11就好了 這部分方案數是 j 1i 1 2vi s j 1 prod limits 2 1 j 1 i 1 2 vis j 1 然後大於等...

牛客練習賽73 C 生涯回憶錄 題解

簡要題意 給定乙個集合,求集合裡面每乙個子集的 mex。這裡定義乙個集合的 mex 為這個集合最小的沒有出現的數 考慮乙個數作為 mex 在幾個子集裡面出現,首先它能成為 mex 需要小於它的自然數都至少出現乙個,也就是它必須小於等於給定的集合的 mex。列舉每乙個 mex,記錄每個可能稱為 mex...

牛客練習賽9

時間限制 c c 1秒,其他語言2秒 空間限制 c c 32768k,其他語言65536k 64bit io format lld 珂朵莉想每天都給威廉送禮物,於是她準備了n個自己的本子 她想送最多的天數,使得每天至少送乙個本子,但是相鄰兩天送的本子個數不能相同 珂朵莉最多送幾天禮物呢 第一行乙個整...