原创 ACM多項式算法入門

在摸索了很久很久,還是沒找到多項式的正確入門方式,所以嘗試着自己寫一下 內容包含 多項式乘法 多項式求逆 多項式除法 多項式取模 多項式開根(待更新) 多項式求ln(待更新) 多項式求exp(待更新) 多項式乘法 對於多項式

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

A: #include <bits/stdc++.h> #include<ext/pb_ds/assoc_container.hpp> #include<ext/pb_ds/hash_policy.hpp> using namespac

原创 hdu 6010

#include <bits/stdc++.h> using namespace std; typedef long long LL; typedef unsigned long long ULL; LL Gcd(LL a, LL b)

原创 Codeforces Round #589 (Div. 2)

A: #include <bits/stdc++.h> using namespace std; int cnt[20]; int main(){ int l,r; scanf("%d%d",&l,&r); fo

原创 hdu 6000

#pragma GCC optimize(2) #include <bits/stdc++.h> using namespace std; typedef long long LL; inline int read(){ int

原创 HDU 6006

/* hdu 6006 solve: dp */ #include <bits/stdc++.h> using namespace std; vector<int> v[20],p[20],leg[20]; int c

原创 hdu 5999

#include <bits/stdc++.h> #include<ext/pb_ds/assoc_container.hpp> #include<ext/pb_ds/hash_policy.hpp> using namespace s

原创 2019 CCPC 秦皇島

A: #include <bits/stdc++.h> using namespace std; const int N = 2e3 + 10; struct node{ long long x,y; node(long

原创 [kuangbin帶你飛] 專題四 最短路練習 練習

1、Til the Cows Come Home  裸的最短路,wa一路發現自己T,N讀入反了,據說還有重邊,不過是鄰接矩陣需要考慮的問題,前向星和鄰接表可以忽略。 #include <iostream> #include <algor

原创 容斥原理

容斥原理 今天學習了容斥原理 上述爲容斥原理的公式,推導建議百度。我們發現,當我們要求一個集合的並集的時候,可以很好的利用容斥原理來求解。那麼我們可以得到一些很好的性質。 注意到 偶數個集合的交集前爲加號,而奇數個集合交集前

原创 數論常見公式(不間斷更新)

迪利克雷卷積 ϵ=μ∗1⇔ϵ(n)=∑d∣nμ(d)(1)\epsilon=\mu*1\Leftrightarrow \epsilon(n)=\sum_{d|n}\mu(d) \tag{1}ϵ=μ∗1⇔ϵ(n)=d∣n∑​μ(d)

原创 多項式算法入門

在摸索了很久很久,還是沒找到多項式的正確入門方式,所以嘗試着自己寫一下 多項式乘法 對於多項式A(x),B(x)A(x),B(x)A(x),B(x) A(x)=anxn+an−1xn−1+an−2xn−2+an−3xn−3+..

原创 F - Red-White Fence

選出一個山峯一樣的數列,問總長度是多少,我們發現,周長的總長只取決於最長的那一塊木板和選取的模板個數,總周長就是(L+M)∗2( L + M ) * 2(L+M)∗2 其次,我們考慮給木板按長度分類 第一類是對應長度只有一塊的,那

原创 矩陣樹定理

今天學習了矩陣樹定理,就是求解無向圖最小生成樹個數的一個東西 首先需要構造無向圖的基爾霍夫矩陣,我們記爲矩陣K。矩陣K滿足, K=D−AK = D - AK=D−A 其中D是這個無向圖的度數矩陣,在對角線上值是每個點的度數,其他位

原创 FFT處理字符串匹配問題

現在我們擁有一個文本串B一個模式串A,詢問A在B中出現的次數 很顯然這是一個KMP的裸題,但是現在不考慮使用KMP,使用FFT來找A在B中出現的次數 首先定義函數 P(x)=∑i=0m−1(A(i)−B(x−m+i+1))P(x)