原创 Educational Codeforces Round 53 (Rated for Div. 2)

Educational Codeforces Round 53 (Rated for Div. 21073A. Diverse Substring1073B. Vasya and Books1073C. Vasya and Robot

原创 VIJOS1986 小h的妹子樹二

題意簡述 給定一棵有n個節點的樹 n<=10^5 需要支持2種操作 Q u v 詢問從u到v路徑上所有點的權值和 C u v 改變u的權值爲v 操作次數m<=2*10^5 分析 無腦樹鏈剖分,然後直接用BIT維護就可以了 但是這題的

原创 VIJOS 1999 小h的妹子樹三

題意簡述 給定節點個數n和樹高h(樹根高爲0),求出滿足節點數位n,樹高爲h的二叉樹的個數 答案對p取模,T組數據 對於100%的數據,滿足1<=n<=1200,1<=h<=1200,1<=T<=2000000,1<=P<=1007。

原创 乘法逆元的幾種求法總結

乘法逆元 對於縮系中的元素,每個數a均有唯一的與之對應的乘法逆元x,使得ax≡1(mod n) 一個數有逆元的充分必要條件是gcd(a,n)=1,此時逆元唯一存在 逆元的含義:模n意義下,1個數a如果有逆元x,那麼除以a相當於乘以x。

原创 洛谷p3768 簡單的數學題

題目大意 求∑i=1n∑j=1nijgcd(i,j) 對質數p取膜的結果 n<=10^10 5*10^8<=p<=1.1*10^9 傳送門https://www.luogu.org/problem/show?pid=3768 分析 看

原创 線性篩法求phi函數表

void phi_table(){ phi[1]=1; fo(i,2,mn){//從2開始計算 if (!phi[i]){//等價於是質數 pri[++pt]=i;

原创 51nod 1490 多重遊戲

1490 多重遊戲 題目來源: CodeForces 基準時間限制:1 秒 空間限制:131072 KB 分值: 40 難度:4級算法題 收藏 關注 有一個兩人遊戲,遊戲是這樣的,有n個非空串。在遊戲的過程是,兩個玩家輪流向一個字

原创 VIJOS 1985 小h的妹子樹一

題意簡述 給定n個節點組成的森林,需要支持兩個操作 Q u v:詢問泡u和v的最小代價 L u v:連接u和v 對於100%的數據,保證:1<=n<=100000,1<=操作個數m<=200000,1<=Vi<=1000 分析 對於

原创 CF615A Bulbs

題目大意 有n個開關和m個燈泡。這m個燈泡編號分別爲1到m。按下第i個開關,可以打開Xi個燈泡,這些燈泡編號分別爲Yij。一個燈泡可以被打開多次。 求解能不能通過這n個開關將m個燈泡全部都打開 分析 手速題,直接模擬啦。 比賽時還是因

原创 FFT/NTT做題方法與調試技巧(+提高碼題效率的一些想法)

(其實本文應該寫成了“結合FFT討論的調試技巧+碼題方法”,語文不好一寫文章就偏題QAQ) 有意見歡迎提出,有遺漏歡迎補充! FFT(快速傅里葉變換)/NTT(數論變換)是卷積運算常見而實用的優化 但是FFT/NTT的處理過程並不像暴力

原创 VIJOS 1516 N連環

題意 九連環應該都知道吧! (1)第 1 環可以自由上下 (2)而上/下第 n 環時(n>1),則必須滿足: (a)第 n-1 個環在架上 (b)前 n-2 個環全部在架下 爲了讓大家多學點知識,特改此題 輸入2個N連環的狀態

原创 狄利克雷卷積及莫比烏斯反演定理

在數論函數集上,狄利克雷卷積定義爲如下的二元運算 (f*g)(n)=d|nΣf(d)g(n/d) 狄利克雷卷積運算滿足交換律,結合律,分配律 在數論函數集上,存在單位元函數ε(n)滿足ε(1)=1 ε(n)=0(n>1) 使得(f*

原创 VIJOS1420Valentine’s Seat

題目大意 可以給排列成n+1行m+1列矩陣的椅子上色。其中,第一行所有的椅子都已上好粉紅色,第一列從第2個開始的椅子都已上好天藍色。對於其他的椅子,應保證,它的顏色和它左邊的或上面的椅子顏色相同。求染色的方案數模19900801的值。 分

原创 VIJOS 1547 逆轉,然後再見

題意簡述 有3部車在k個城市間旅遊,每次只能移動一部車,去第k個城市的前提是前k-1個城市都去過。 求旅行完k個城市的最短距離 分析 將狀態表示出來,直接dp即可 記f[a,b,c]表示三部車分別在a,b,c城市的最短距離(a>b>c

原创 線性篩法求素數表

void prime_table(){ scanf("%d",&n); fo(i,2,n){ if (!isp[i]){ pri[++pt]=i; //pri