原创 FFT&NTT學習筆記

前置芝士:單位根 複數 定義 衆所周知實數分佈在一維的實數軸上,單位是1。類比實數軸,我們有虛數軸,單位是\(i\)。\(i\)是什麼呢?簡單地說就是\(\sqrt{-1}\)。類比於平面直角座標系的x,y軸,我們有複平面,豎軸是虛數軸,橫

原创 BZOJ4833 [Lydsy1704月賽]最小公倍佩爾數

題意 已知\(e_n+\sqrt2f_n=(1+\sqrt2)^n\),\(e_n-\sqrt2f_n=(1-\sqrt2)^n\),\(g_n=lcm_{i=1}^nf_i\),求\(\sum_{i=1}^{n}g_i\times i\)

原创 LuoguP3338 [ZJOI2014]力

題意 已知\(n\),\(q_1\),\(q_2\),...,\(q_n\),定義 \(F_j= \sum_{i=1}^{j-1}\frac{q_i\times q_j}{(i-j)^2}- \sum_{i=j+1}^n\frac{q_i\

原创 LuoguP5488 差分與前綴和

題意 給定一個長爲\(n\)的序列\(a\),求出其\(k\)階差分或前綴和。結果的每一項都需要對\(1004535809\)取模。 打表找規律 先看前綴和,設\(n=5\),\(k=4\),按照階從小到大把\(a_1\)在每個位置出現的

原创 LuoguP5075 [JSOI2012]分零食

題意 有\(A\)個人,\(m\)個糖,你可以選擇一個\(k\),使第\(1\)~\(k\)個人每個人至少得到一個糖,並且第\(k+1\)~\(A\)個人都得不到糖。\(m\)個糖必須給完。對於每個方案都有一個歡樂值,歡樂值=\(\prod

原创 csp2019遊記

才踏出考場半步,迎來的不是解放的歡呼,而是你谷討論版上考生漫天的哀嚎,而是某乎題解貼中出題人集體的匿名——這究竟是人性的扭曲,還是道德的淪喪?請看本週的今日說法 讀完三道題的題面後,我對次試的直觀印象就是——題目都巨**長,讓我心生厭煩。由

原创 與圖論的邂逅09:樹上啓發式合併

啓發式樹上合併 先看這樣一個例題: 給定一個長度爲\(10^5\)的序列,序列中都是\([0,1000000]\)的整數,接下來有\(10^5\)次詢問,共兩種詢問:修改序列某個位置的值,以及查詢區間\([L,R]\)內一共有多少種不同的數

原创 [USACO13DEC]牛奶調度Milk Scheduling

原題鏈接https://www.lydsy.com/JudgeOnline/problem.php?id=4096 容易想到的一個測略就是,優先考慮結束時間小的牛。所以我們對所有牛按照結束時間排序。然後我們發現前\(i\)頭奶牛在時刻j的最

原创 [Usaco2015 dec]Breed Counting

原題鏈接https://www.lydsy.com/JudgeOnline/problem.php?id=4397 用線段樹維護區間和即可。時間複雜度\(O((N+Q)logN)\)。 #include<iostream> #include

原创 [Usaco2009 Feb]Bullcow 牡牛和牝牛

原題鏈接https://www.lydsy.com/JudgeOnline/problem.php?id=3398 容易想到的一種\(dp\)就是:設\(dp[i][j]\)表示前\(i\)頭牛裏面有\(j\)頭牡牛的方案數,那麼轉移方程就

原创 [Usaco2016 Dec]Moocast

原題鏈接https://www.lydsy.com/JudgeOnline/problem.php?id=4749 可以對於每個點\(i\),往跟\(i\)距離小於等於\(p[i]\)的點\(j\)都連一條邊,表示\(i\)可以傳輸到\(j

原创 [Usaco2006 Open]County Fair Events 參加節日慶祝

原題鏈接https://www.lydsy.com/JudgeOnline/problem.php?id=1664 可以發現的是,如果參加了節日\(i\)之後可以參加節日\(j\),當且僅當\(i\)節日的結束時間\(l[i]\)小於等於\

原创 [USACO2011 Feb] Cow Line

原題鏈接https://www.lydsy.com/JudgeOnline/problem.php?id=3301 康拓展開和逆展開的模板題。 #include<iostream> #include<cstring> #include<cs

原创 [Usaco2016 Dec]Counting Haybales

原題鏈接https://www.lydsy.com/JudgeOnline/problem.php?id=4747 先將原數組排序,然後二分查找即可。時間複雜度\(O((N+Q)logN)\)。 #include<algorithm> #i

原创 [ZJOI2005]午餐

題目描述 上午的訓練結束了,THU ACM小組集體去吃午餐,他們一行N人來到了著名的十食堂。這裏有兩個打飯的窗口,每個窗口同一時刻只能給一個人打飯。由於每個人的口味(以及胃口)不同,所以他們要吃的菜各有不同,打飯所要花費的時間是因人而異的。