原创 【數論】乘法逆元

【數論】乘法逆元 Definition 對於一個數 \(x\) 和一個模數 \(p\),若存在一個數字 \(y\),滿足 \[x \times y \equiv 1 \pmod p\] 則稱 \(y\) 是 \(x\) 在模 \(p\) 意

原创 多項式操作公式記錄

多項式操作公式記錄 不證明了。 以下默認 \(A(x)\) 爲 \((n - 1)\) 次多項式 \(A(x) = \sum_{i = 0}^{n - 1} a_i x^i\),且 \(n\) 爲 \(2\) 的整數冪。 快速傅里葉變換/數

原创 To-do List

To-do List 學 OI 已經兩年多了,回去康康一年以前的 blog,發現以前的內容有很多明顯事實錯誤,還給出了一些不加證明的結論等等,並且碼風又醜又囉嗦。所以最近會修一些以前的 blog,該加上證明的會給出證明,有事實錯誤的會修改錯

原创 【多項式】FFT

【多項式】FFT Preface 本文對所有 \(\LaTeX\) 編譯後生成的文本共有大約 \(7000\) 字,其中前半部分爲前置知識部分,介紹了多項式的有關概念、運算法則以及複數的概念、運算法則以及單位根有關內容,並證明了蝴蝶操作所用

原创 【字符串】【P5830】 【模板】失配樹

【字符串】【P5830】 【模板】失配樹 Description 給定一個長度爲 \(n\) 的字符串 \(S\),有 \(m\) 次詢問,每次詢問給定 \(S\) 的兩個前綴,求它們的最長公共 border 的長度。 最長公共 borde

原创 【可持久化線段樹】【P5826】【模板】子序列自動機

【可持久化線段樹】【P5826】【模板】子序列自動機 Description 給定一個序列 \(A\),有 \(q\) 次詢問,每次詢問一個序列 \(B\) 是不是 \(A\) 的子序列 Limitations 序列 \(A\) 長度不超過

原创 csp-s 2019 遊記

csp-s 2019 遊記 written by 一扶蘇一 Preface 這是一篇以遊記爲名的流水賬。扶蘇文筆不好,只會寫流水賬。 Day \(-1\) 這是比賽前的幾天。 從上週開始調整作息,晚上雖然睡得一樣晚但是早晨 \(8\) 點讓

原创 【DP】【P5615】 [MtOI2019] 時間跳躍

Description 給定 \(n\) 條邊,第 \(i\) 條邊的長度爲 \(i\),每條邊都有 \(50\%\) 的概率被選擇,求如果選出的邊能組成一個平面凸多邊形,則方案的權值是方案中邊的數量,否則權值爲 \(0\)。求權值的期望對

原创 【貪心】【P4053】[JSOI2007] 建築搶修

【貪心】【P4053】[JSOI2007] 建築搶修 Description 有 \(n\) 個工作,第 \(i\) 個工作做完需要 \(a_i\) 的時間,並且必須在 \(b_i\) 時刻前完成。求最多能按時完成多少個工作 Limitat

原创 10月28日模擬賽題解

10月28日模擬賽題解 A Description 機房來了新一屆的學弟學妹,邪惡的chenzeyu97發現一位學弟與他同名,於是他當起了善良的學長233 “來來來,學弟,我考你道水題檢驗一下你的水平……” 一個棧內初始有n個紅色和藍色的小

原创 【字符串】後綴排序

後綴排序 Task Description 給定一個字符串,要求按字典序升序輸出它的所有後綴子串的第一個字符所在位置。 Requirements & Limitations 字符集大小爲常數,要求時間複雜度 \(O(n \log n)\),

原创 10月20日模擬賽題解

10月20日模擬賽題解 A 紙牌 Description 桌面上有 \(n\) 張紙牌,每張紙牌的正反兩面各寫着一個整數,初始時正面朝上。現在要求你翻動最少的紙牌,使得朝上的數字中最少有一半的數字是相同的,或判斷無解。 Limitation

原创 10月15日模擬賽題解

10月15日模擬賽題解 A 樹 Description 給定一棵 \(n\) 個節點的樹,每個節點有兩個參數 \(a,~b\),對於每個節點,求子樹中參數爲 \(b\) 的所有節點的 \(a\) 之和 Limitations \(100\%

原创 NOIp初賽題目整理

NOIp初賽題目整理 這個 blog 用來整理扶蘇準備第一輪 csp 時所做的與 csp 沒 有 關 系 的歷年 noip-J/S 初賽題目,記錄了一些我從不知道的細碎知識點,還有一些憨憨題目,不定期更新。 1、(07senior,5)

原创 【meet in the mid】【qbxt2019csp刷題班day1C】birthday

Description 給定一個長度爲 \(n\) 序列,值域爲 \([1, v]\),每次選擇一段區間,要求在這個區間上選擇一些元素加入到兩個集合中,每個元素要麼不選要麼只能加入一個集合,要求兩個集合非空且元素和相等,問能否實現。 同時要