「學習筆記」Min25篩
前言
Min25篩是一種能夠用於求解積性函式 f(x)的字首和的方法,其前提條件是 ∑x≤,nx是質數f(x)可以用 ∑x≤,nx是質數h(x)簡單表示。其中 h(x)為完全積性函式。
過程
首先,對於每一個 ⌊xn⌋,我們求出 ∑x≤,nx是質數h(x)。
設 pi表示第 i小的質數, g(N,i)表示 ∑x≤n,x的最小質因子≥pih(x)。即 N以內的數進行 i輪埃氏篩後未被篩掉的數的 h(x)之和(質數未被刪去),則所求即為 g(N,∣P∣)( ∣P∣為 ≤n的質數個數)。
考慮如何由 g(N,i−1)得到 g(N,i)。考慮第 i輪埃氏篩所篩去的數。當 pi2>n時,第 i輪不會篩去任何數。否則,將篩去最小質因子 ≥pi的合數,所以
g(N,i)=g(N,i−1)−h(pi)×(g(⌊piN⌋,i−1)−j=1∑i−1h(pi))
因為 pi2≤N,所以 pi≤⌊piN⌋,所以 ≤pi的質數也會被包含在 g(⌊piN⌋,i−1)裡,要加回來。
綜上,
g(N,i)={g(N,i−1)g(N,i−1)−h(pi)×(g(⌊piN⌋,i−1)−∑j=1i−1h(pi))pi2>npi2≤n
這部分的時間複雜度是 O(log NN43)
接下來考慮如何用上述資訊求
前言
M
i
n
25
中位數 root lca peak 繼續 bzoj2653 進行 turn size
註:此博客寫於 2017.12
可持久化線段樹
常見的一個實現是主席樹,由HJT主席引入中國OI界。
基本思想
考慮一顆不同的線段樹,進行單點修改。註意到每一次只會修改 \(\log\ 以及 display max 很多 chl 51nod ble 成了 time
註:此博客寫於 2017.12
Warn:此博文有超過近10處錯誤,請結合上下文辨別
前置技能
定義
數論函數。 定義域為正整數的函數。以下默認所有數都是正整數。
積性函數。 對於所有 bzoj3996 特殊 其中 線性 一次 子集 不可 做到 二分
註:此博客寫於 2017.11
前言
今年NOIP2017提高的初賽考到的最小割。這是否意味著網絡流進入NOIP考綱?
蒟蒻Cyani發現,周圍的同學都會網絡流啊。蒟蒻也來學一學姿勢。
比較推薦LRJ的藍
鏈式前向星
圖的儲存一般有兩種:鄰接矩陣、前向星。
若圖是稀疏圖,邊很少,開二維陣列a[][]很浪費;
若點很多(如10000個點)a[10000][10000]又會爆.只能用前向星做.
前向星的效率不是很高,優化後為鏈式前向星,直接介紹鏈式前向星。
 
容斥原理
說的是一種計數方式,使得每種情況只被記一次。
∑
i
隨機打亂序列與生成隨機數。
#include <algorithm> //random_shuffle
#include <cstdio>
#include <random>
using namespace std;
int main() {
快速傅立葉變換(
Fast Fourier Transform,FFT
\text{Fast Fourier Transfo
[
ZJOI 2009
]
「學習筆記」李超線段樹
background
學這個演算法的是因為某天一個題用$ \text{ set } $維護斜率被卡常數了,在某大佬的安利下學了這個科技,聯賽後又思考了很多關於這個演算法的問題,於是寫一篇部落格來頹廢並調整一下文化課學習以來壓抑的心態。
在平時的一些訓練中往往遇到一些維護斜率的問題
題解:有這樣一個演算法:
給定n個排列Ai和n個排列Bi,求一個排列p使得:
∀i,j∈[1,n],j≠pi,Ai,pi<Ai,j∨Bk∣pk=j,j<Bi,j\forall i,j\in[1,n],j\neq p_i,A_{i,p_ 前言
由於本人正在準備自考,所以學習下c語言以及相關的基礎,最近會更新很基礎的知識
進位制
常用的進位制分別為2進位制、10進位制(生活常用)、16進位制
進位制間的關係表
二進位制
十進位制
十六進位制
0
0
0
1
1
1
10
2
2
11
3
3
100
4
4
1 「學習筆記」集合冪級數
本文是一篇學習筆記,具體的概念請參考2015年VFK的國家隊論文《集合冪級數的性質及其快速演算法》
集合並卷積 - 快速莫比烏斯變換
我們要求形如這樣的一個卷積: \[ h_S =\sum_{L \subseteq S}\sum_{R\subseteq S} [L\cup R=S
「HNOI 2008」玩具裝箱TOY
首先O(n2)O(n^2)O(n2)做法是顯然的,使用字首和然後暴力列舉轉移
dp[0] = 0;
for(int i = 1; i <= n; i ++)
引入
有時候題目要求一些這樣的問題 1. 求以串
s
s
s 本質不同的迴文串個數(即長度不同或長度相同且至少有一個字元不相同的字串) 2. 求以位置
i
ISAP學習筆記
ISAP是OI中求最大流的常用方法之一。相對於Dinic,ISAP的速度提升了很多,但編碼複雜度也上升了不少。
約定
採用鄰接表儲存圖,對於每條弧,增加一條容量為0的逆向邊。 d陣列代表每個點到終點的距離。
引入
求解最大流有一種基礎方法,每次在殘量網 FHQ Treap
FHQ Treap (%%%發明者範浩強年年NOI金牌)是一種神奇的資料結構,也叫非旋Treap,它不像Treap zig zag搞不清楚(所以叫非旋嘛),也不像Splay完全看不懂,而且它能完成Treap與Splay能完成的所有事,程式碼短,理解也容易。
基本操作
FHQ Tr
通過一個比喻來簡單理解: 請求轉發:A向B傳送一次請求,想讓他完成某項工作,當B接受到請求時,發現自己完成不了,又請求C幫忙,C接收到B請求之後最終完成了該項工作,並把最後的結果交給了A。在此期間,A只發送了一次請求,他只知道把任務交給了B,至於B是如何完成的,A並不知道,他只等待最終的
1
include指令通過file屬性指定被包含的檔案,並且file屬性不支援任何表示式;
<jsp:include>動作標識通過page屬性指定被包含的檔案,而且page屬性支援JSP表示式。
2
使用include指令時,被包含的檔案內容會原封不動的
OAuth 2.0 協議是一種三方授權協議,目前大部分的第三方登入與授權都是基於該協議的標準或改進實現。OAuth 1.0 的標準在 2007 年釋出,2.0 的標準則在 2011 年釋出,其中 2.0 的標準取消所有 Token 的加密過程,並簡化了授權流程,但因強制使用 HTTPS 相關推薦
「學習筆記」Min25篩
「學習筆記」可持久化線段樹
「學習筆記」數論函數
「學習筆記」網絡流基礎
「學習筆記」鏈式前向星
「學習筆記」容斥原理及其應用
「學習筆記」C++與C++11的語法技巧
「學習筆記」Fast Fourier Transform 快速傅立葉變換
「學習筆記」網路流題單
「學習筆記」李超線段樹
「學習筆記」uoj #41 【清華集訓2014】矩陣變換
「學習筆記」進位制轉換
「學習筆記」集合冪級數
「學習筆記」斜率優化
「學習筆記」迴文樹/迴文自動機(Palindromic Tree)
「學習筆記」ISAP求最大流
「學習筆記」 FHQ Treap
「學習筆記」請求轉發(Forward)與請求重定向(Redirect)的區別
「學習筆記」include指令與jsp:include動作標識的區別
「學習筆記」OAuth2.0 協議