https://en.wikipedia.org/wiki/Greatest_common_divisor
https://en.wikipedia.org/wiki/Euclidean_algorithm
$ \begin{eqnarray} gcd(a,b) = \begin{cases}
a, & b = 0 \cr
gcd(b, a \bmod b), & otherwise
\end{cases} \end{eqnarray} $
令 $ r = gcd(a,b) $
則 $ r \mid a, r \mid b $
故 $ r \mid (a - b) $
引 $ r \mid (a - kb)
\Rightarrow r \mid (a - \lfloor \frac{a}{b} \rfloor b)
\Rightarrow r \mid (a \bmod b) $
故 $ gcd(a,b) \equiv gcd(b, a \bmod b) $
https://en.wikipedia.org/wiki/Extended_Euclidean_algorithm
若 $ a, b, gcd(a,b) = 1 $,求 $ax + by = 1$
https://en.wikipedia.org/wiki/Multiplicative_inverse
https://en.wikipedia.org/wiki/Fermat%27s_little_theorem
若 $p$ 是素數,$a$ 是正整數,則:$a^p \equiv a \pmod{p}$。
若 $p$ 是素數,$a$ 是正整數且不能被 $p$ 整除,則:$a^{p-1} \equiv 1 \pmod{p}$。
https://en.wikipedia.org/wiki/Euler%27s_theorem
若 $gcd(p, a)$ = 1,則:$a^{\phi(p)} \equiv 1 \pmod{p}$。$\phi(n)$ 是歐拉函數。
若 $ax \equiv 1 \pmod{p}$,則稱 $x$ 爲 $a$ 模 $p$ 的逆元。
構造 $ax + py = 1$,則x可以用擴展歐幾里德算法求得;
若 $p$ 是質數,$a^{p-2} \equiv x \pmod{p}$。
接下來講實踐中的三個小trick。
Q:教練,我不想求逆元!
A:可以通過以下性質來避開。
若 $b | a$,則:$\frac{a}{b} \bmod p = \frac{a \bmod pb}{b}$
證明:
$ \begin{align*}
& \because \frac{a}{b} \equiv y \pmod{p} \\
& \Rightarrow \frac{a}{b} = px + y \\
& \Rightarrow a = pbx + by \\
& \Rightarrow a \bmod pb = by \\
& \Rightarrow \frac{a \bmod pb}{b} = y \\
& \therefore \frac{a}{b} \bmod p = \frac{a \bmod pb}{b} \\
\end{align*} $
Q:如何對 $1!$ 到 $p-1!$ 的逆元高效打表?
A:1
2
3
4fac[0] = 1;
rep(i, 1, p) fac[i] = fac[i-1] * i % p;
inv[p-1] = csl::inv(fac[p-1]);
rrep(i, 1, p) inv[i-1] = inv[i] * i % p;
Q:那 $1$ 到 $p-1$ 不能這樣玩啊!
A:1
2inv[1] = 1;
rep(i, 2, p) inv[i] = (p - p / i) * inv[p % i] % p;
證明:
對於 $x$ 的逆元 $inv(x)$,滿足 $ x \cdot inv(x) \equiv 1 \pmod{p}$
由於 $p = ax + b$,令 $a = \lfloor \frac{p}{x} \rfloor, b = p \bmod x$
所以 $x = (p-b) / a = -b / a \pmod{p}$,$inv(x) = -a/b = -a \cdot inv(b) \pmod{p}$
https://en.wikipedia.org/wiki/Chinese_remainder_theorem
已知 $ M = \prod m_{i} $,$ m_{i} \text{ is a prime number} $,$ S \equiv a_{i} \pmod{m_{i}} $,求 $ S $
先看 $ S \equiv a_{i} \pmod{m_{i}} $ 可以轉化爲 $ S + m_{i}y = a_{i} $,這個公式仍然不利於求解
聯想到 $ ax + by = gcd(a, b) $ 的形式,可以用 擴展歐幾里德 搞一搞
不妨令 $ M_{i} = \frac{ M }{ m_{i} } $,構造 $ M_{i}x + m_{i}y = gcd(M_{i}, m_{i}) = 1 $
這樣搞的好處都有啥? 誰說對了csy就給他(非金坷拉
化成 $ M_{i}x \equiv 1 \pmod{m_{i}} $,$ \forall j \neq i, M_{i}x \equiv 0 \pmod{m_{j}} $
顯然 $ x $ 是 $ M_{i} $ 關於 $ m_{i} $ 的逆元,發現並不一定要用 $ exgcd $,我們記爲 $ x_{i} $
那麼 $ a_{i}M_{i}x_{i} \equiv a_{i} \pmod{m_{i}} $,$ S \equiv \sum a_{i}M_{i}x_{i} \pmod{M}$。
本質即求出對於 $m_{i}$ 相互獨立的各項 $ a_{i}M_{i}x_{i}$,然後對其進行合併即可。
一種巧妙的實現:1
2
3
4
5
6
7
8
9
10T M = m[0], R = a[0];
rep(i, 1, n) {
T mi = m[i], ri = a[i];
T g = csl::gcd(M, mi);
if ((R - ri) % g != 0) { cout << "Impossible" << endl; return; }
if (csl::gcd(M / g, g) == 1) M /= g; else mi /= g;
R = R * mi * csl::pow(T(1), mi, M - 2, M) + ri * M * csl::pow(T(1), M, mi - 2, mi);
M *= mi, R %= M;
}
cout << R << endl;
https://en.wikipedia.org/wiki/Inclusion%E2%80%93exclusion_principle
這部分內容姑且放在反演的前面,給讀者壓壓驚。
私以爲,這是組很美妙的公式,如同陰陽兩魚相互糾纏。
定義:
$ g(A) = \sum\limits_{S : S \subseteq A} f(S) $
$ f(A) = \sum\limits_{S : S \subseteq A} (-1)^{|A| - |S|} g(S) $
證明:
$ \begin{align*}
& \because g(A) = \sum\limits_{S : S \subseteq A} f(S) \\
& \therefore \sum\limits_{S : S \subseteq A} (-1)^{|A| - |S|} g(S) \\
& = \sum\limits_{S : S \subseteq A} (-1)^{|A| - |S|} \sum\limits_{T : T \subseteq S} f(T) \\
& = \sum\limits_{T : T \subseteq A} f(T) \sum\limits_{R : R \subseteq A - T} (-1)^{|R|} \\
& = \sum\limits_{T : T \subseteq A} f(T) \sum\limits_{k = 0}^{|A - T|} \binom{|A - T|}{k} (-1)^k \\
& = \sum\limits_{T : T \subsetneqq A} f(T) (1 + (-1))^{|A - T|} + \sum\limits_{T : T \subseteqq A} f(T) (-1)^0 \\
& = 0 + f(A) = f(A) \\
\end{align*} $
https://en.wikipedia.org/wiki/Multiplicative_function
定義:
$ f(1) = 1 $ 且 $ \forall gcd(a,b) = 1, f(ab) = f(a) f(b) $
當 $ \forall a,b $ 都滿足 $ f(ab) = f(a) f(b) $ 時,稱爲完全積性函數。
https://en.wikipedia.org/wiki/Dirichlet_convolution
定義:
$ (f * g)(n) = \sum\limits_{d|n} f(d)g(\frac{n}{d}) $
https://en.wikipedia.org/wiki/Euler%27s_totient_function
一般用 $ phi(n) $ 或者 $ \phi(n) $ 表示,是個不完全積性函數。
若 $ n = \prod\limits_{i = 1}^{m} p_i^{k_i} $,
則 $ \phi(n) = n \prod\limits_{i = 1}^{m} (1 - \frac{1}{p_i}) $
https://en.wikipedia.org/wiki/M%C3%B6bius_function
一般用 $ mu(n) $ 或者 $ \mu(n) $ 表示,是個不完全積性函數。
若 $ n = \prod\limits_{i = 1}^{m} p_i^{k_i} $,
則 $ \mu(n) = \begin{cases}
1, & n = 1 \cr
0, & \exists k_i > 1 \cr
(-1)^m, & \text{otherwise}
\end{cases} $
https://en.wikipedia.org/wiki/M%C3%B6bius_inversion_formula
$ \sum\limits_{d|n} \phi(d) = Id(n) \Rightarrow \phi * 1 = Id $
$ \sum\limits_{d|n} \mu(d) = \epsilon(n) \Rightarrow \mu * 1 = \epsilon $
$ \begin{align*}
& \because \mu * 1 = \epsilon \\
& \therefore \phi(n) \\
& = \sum\limits_{i = 1}^{n} \epsilon(gcd(i,n)) \\
& = \sum\limits_{i = 1}^{n} \sum\limits_{d | gcd(i,n)} \mu(d) \\
& = \sum\limits_{i = 1}^{n} \sum\limits_{d | i \wedge d | n} \mu(d) \\
& = \sum\limits_{d | n} \mu(d) \frac{n}{d} \\
& = (\mu * Id)(n)
\end{align*} $
按這思路,顯然得證 $ \sum\limits_{i = 1}^{n} i \cdot \epsilon(gcd(i,n)) = \frac{n}{2} (\mu * 1 + \mu * Id)(n) = \frac{n}{2} (\epsilon + \phi)(n) $,即[1,n]中與n互質的數之和。
[2015.12.03] 顺便补充下平方和的结论: $ \sum\limits_{i = 1}^{n} i^2 \cdot \epsilon(gcd(i,n)) = \frac{n^2}{3} \phi(n) + \frac{n^2}{2} \epsilon(n) + \frac{n}{6} \sum\limits_{d | n} \mu(d) d $
如 $ \phi * 1 = Id $,$ \mu * Id = \phi $;
又 $ \epsilon * 1 = 1 $,$ \mu * 1 = \epsilon $;
顯然能得出莫比烏斯反演公式 $ f * 1 = F $,$ \mu * F = f $
亦可以寫作:
$ F(n) = \sum\limits_{d | n} f(d) $
$ f(n) = \sum\limits_{d | n} \mu(\frac{n}{d}) F(d) $
證明:
$ \begin{align*}
& \because f * 1 = F \\
& \therefore (\mu * F)(n) \\
& = \sum\limits_{d | n} \mu(d) F(\frac{n}{d}) \\
& = \sum\limits_{d | n} \mu(d) \sum\limits_{d’ | \frac{n}{d}} f(d’) \\
& = \sum\limits_{d’ | n} f(d’) \sum\limits_{d | \frac{n}{d’}} \mu(d) \\
& = \sum\limits_{d’ | n} f(d’) \epsilon(frac{n}{d’}) \\
& = f(n)
\end{align*} $
對於 $ 0 ^ n $ 的二項式展開:
$ \sum\limits_{i = 0}^{n} (-1)^i \binom{n}{i} = (1 + (-1))^{n} $
然後是個組合數學的小trick:
$ \binom{n}{i} \binom{i}{k} = \frac{n!}{(n-i)!} \frac{1}{k!(i-k)!} = \frac{n!}{k!(n-k)!} \frac{(n-k)!}{(n-i)!(i-k)!} = \binom{n}{k} \binom{n-k}{i-k} $
既然都這樣惹,再隨便推導下二項式的反演吧。
$ \begin{align*}
& \because F(n) = \sum\limits_{i = 0}^{n} \binom{n}{k} f(i) \\
& \therefore \sum\limits_{i = 0}^{n} (-1)^{n-i} \binom{n}{i} F(i) \\
& = \sum\limits_{i = 0}^{n} (-1)^{n-i} \binom{n}{i} \sum\limits_{k = 0}^{i} \binom{i}{k} f(k) \\
& = \sum\limits_{k = 0}^{n} f(k) \sum\limits_{i = k}^{n} (-1)^{n-i} \binom{n}{i} \binom{i}{k} \\
& = \sum\limits_{k = 0}^{n} \binom{n}{k} f(k) \sum\limits_{i = k}^{n} (-1)^{n-i} \binom{n-k}{n-i} \\
& = \sum\limits_{k = 0}^{n} \binom{n}{k} f(k) (1 + (-1))^{n - k} \\
& = 0 + f(n) = f(n)
\end{align*} $
$ a_{n} = a_{n-1} ^ 2 - 2 $
令 $ a_{0} = x + \frac{1}{x} $
則 $ a_{n} = x ^ {2^n} + \frac{1}{x^{2^n}} $
$ a_{n} = p⋅a_{n-1} + q⋅a_{n-2} $
特徵方程 $ x ^ 2 = p x + q $,求得 $ \alpha \beta $。
若 $ \alpha \neq \beta $,則 $ a_{n} = c_{1} \alpha ^ n + c_{2} \beta ^ n $;
若 $ \alpha = \beta $,則 $ a_{n} = (c_{1} + n c_{2}) \alpha ^ n $。
求得 $ c_{1}, c_{2} $,求得 $ p, q $,即求得 $ a_{n} $。
$ S_{n} = \lceil (a + \sqrt{b}) ^ {n} \rceil $
構造 $ (a + \sqrt{b}) ^ {n} + (a - \sqrt{b}) ^ {n} $
$ \because 0 < a - \sqrt{b} < 1 $,
且二項式展開、合併同類項後,只可能有 $ \sqrt{b} ^ {2i} = b ^ i $
$ \therefore S_{n} = (a + \sqrt{b}) ^ {n} + (a - \sqrt{b}) ^ {n} $
$ S_{n} ⋅ ((a + \sqrt{b}) + (a - \sqrt{b})) $
$ =
(a + \sqrt{b}) ^ {n+1} +
(a - \sqrt{b}) ^ {n+1} +
(a + \sqrt{b}) (a - \sqrt{b}) ((a + \sqrt{b}) ^ {n-1} + (a - \sqrt{b}) ^ {n-1}) $
$ = S_{n+1} + (a ^ 2 - b) S_{n-1} $
移項得 $ S_{n+1} = 2a S_{n} + (b - a ^ 2) S_{n-1} $
也可以直接構造上一節 “a[n] = p⋅a[n-1] + q⋅a[n-2]” 的形式,
特徵根 $ a - \sqrt{b}, a + \sqrt{b} $,$ p = 2a, q = b - a ^ 2 $
輕鬆得 $ S_{n+1} = 2a S_{n} + (b - a ^ 2) S_{n-1} $
https://en.wikipedia.org/wiki/Kahan_summation_algorithm
對浮點序列求 $ \sum a_i $ 減小過程中的誤差
1 | function KahanSum(input) |
牛頓迭代法(Newton Method):https://en.wikipedia.org/wiki/Newton%27s_method
對 $ \sqrt{S} $ 構造 $ f(x) = x ^ 2 - S = 0 $
有 $ x_{n+1}
= x_{n} - \frac{ f(x_{n}) }{ f’(x_{n}) }
= x_{n} - \frac{ x_{n}^{2} - S }{ 2x_{n} }
= \frac{1}{2} (x_{n} + \frac{S}{x_{n}}) $
長時間沒寫代碼,狀態又下滑的很厲害。
A忘了endl會導致強行把緩衝區的數據都輸出,導致一發TLE。
C沒有過腦子就寫了個BIT,結果亂搞沒過,差點導致罰時爆炸。
怎麼想都是我的鍋。
英文隊名:Tempest
The protoss tempest is a unit that was introduced in StarCraft II: Heart of the Swarm.
Nothing a little determined firepower can’t crack. If you can get close enough.
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5687
四個數相加是否大於等於80
長時間沒寫代碼,狀態又下滑的很厲害。
A忘了endl會導致強行把緩衝區的數據都輸出,導致一發TLE。
C沒有過腦子就寫了個BIT,結果亂搞沒過,差點導致罰時爆炸。
怎麼想都是我的鍋。
上學期末,有幸搶到了楊海峯老師的公選課《從內聖到外王》;今天是第一堂課,我覺得不虛此行。
順便附上:生生學堂(http://sssch.net/)是楊老師創辦的一個公益學習平臺。
楊老師並非聖賢,正如他所言,只是一個活生生的人。但他敢於把某些事情擺到檯面上來談論,而其他的人不外乎瞎子、鴕鳥,以及既得利益者。我很慶幸,因爲他所提及的話題,與我以前的瞎想,不謀而合。雖然對於個人與整體的問題上,我對他的看法不以爲然。
誠然,中國古代文化,並非那些膚淺的條條框框,它隱藏而躍動在古書的字裏行間。
而我們的教育,則是給了你一把鑰匙,打開新世界的大門;而不是大多數人所臆測的,諸如“詰屈聱牙就是古人的文化”。
平心而論,若連古文、古語都不懂,又有甚麼資格妄自揣測古代文化,得到的結論只是夜郎自大式的笑料罷了。
中國的民科,異常喜歡引經據典。甚麼經?山海經!愈是光怪陸離,愈發獲得他們的鍾愛。在他們眼裏,大衆便是他們愚弄的對象,而古書就是他們作惡的工具。這對古典文化無疑產生了惡劣的影響,但我犯不着跟民科慪氣,何必自降身段?
我一向討論機械性的重複動作,這次楊老師也提及了這個名詞。我覺得這極端扼殺一個人的天性與天賦。
由此可見,縱使我們經歷了改革開放,思想的桎梏仍然不減,只是改頭換面換個土壤繼續滋生;然而十年文革,反而令殘存的道德與血氣都消失殆盡了。
我們的教育是基礎性的教育,這爲大類的學科奠定了基礎。或許是實施的過程中有所偏差,現實是成爲了死板的考試。而我一直想詬病的,則是很多學科並不存在於他們的視界中,也沒更沒有啓蒙的意向。例如古代的“小學”,是教人知文識字的,更要講述字形的來源與讀音的變遷,而不是強制推行的千篇一律的簡化字、普通話,並壓制地方文化的發展。
回實驗室的路上,我就在思索,是什麼壓彎了我們的腰。
我跟楠提過一句:“改變這種東西,本身就是內源性的。就算你是被強迫的,你爲什麼不去反抗?你失去反抗勇氣的一刻,就是默許了接受。”
而我想做的,無非掛羊頭賣狗肉,應付了事。我爲此付出了代價,來到了這並不算好的學校,這也是我的選擇。
遊離在邊緣,在夾縫中尋找,大概是我如今處境的最好寫照。
我打“楊老師”三字時,誤鍵入爲“楊老司機”。
不過想來他是不會在意的。
上學期末,有幸搶到了楊海峯老師的公選課《從內聖到外王》;今天是第一堂課,我覺得不虛此行。
順便附上:生生學堂(http://sssch.net/)是楊老師創辦的一個公益學習平臺。
]]>……对于善来说,愚蠢是比恶意更加危险的敌人。你可以抵抗恶意,你可以揭下它的面具,或者凭借力量来防止它。恶意总是包含着它自身毁灭的种子,因为它总是使人不舒服,假如不是更糟的话。然而面对愚蠢,根本无法防卫。要反对愚蠢,抵抗和力量都无济于事,愚蠢根本不服从理性。假如事实与一己的偏见相左,那就不必相信事实,假如那些事实无法否认,那就可以把它们干脆作为例外推开不理。所以同恶棍相比,蠢人总是自鸣得意。而且他很容易变成危险,因为要使他挥拳出击,那是易如反掌的。所以,比起恶意来,愚蠢需要加倍小心地对付。我们不要再三努力同蠢人论理,因为那既无用又危险。
……要恰当地对待愚蠢,认识它的本来面目是必不可少的。十分肯定的是,愚蠢是一种道德上的缺陷,而不是一种理智上的缺陷。有些人智力高超,但却是蠢人,还有些人智力低下,但绝非蠢人,作为某些特定环境的产物,我们惊讶地发现了这种情况。我们得到的印象是:愚蠢是养成的,而不是天生的;愚蠢是在这样一些环境中养成的,在这种环境下,人们把自己弄成蠢人,或者允许别人把自己弄成蠢人。我们还进一步注意到,比起不善交际或孤寂独处的人来,在倾向于或注定要群居或交往的个人或团体当中,愚蠢要普遍得多。由此看来,愚蠢是一个社会学问题,而不是一个心理学问题。
……然而正是在这个方面,我们意识到,蠢人不可能靠教育来拯救。他所需要的是救赎,此外别无他法。迄今为止,企图用理性论证去说服他,丝毫没有用处。在这种事态中,我们可以完全明白,为什么试图去发现“人民”真的在想什么是徒劳无益的,为什么这个问题对于负责地思考和行动的人来说也完全多余。正如《圣经》所言:“对上帝的畏惧,就是智慧的开端。”换言之,治疗愚蠢的唯一办法,是灵性上的救赎,因为唯有这样,才能使一个人像上帝眼中负责任的人那样生活。
……不过,在对人的愚蠢的这些思考中,也有一点可慰之处。我们没有任何理由认为,大多数人在所有的环境中都是愚蠢的。长期起重大作用的是:我们的统治者是希望从人们的愚蠢之中,而不是从人们的独立判断和敏锐思想之中,获得更多的东西。
Welcome to Hexo! Check documentation for more info.
以上一行字,表明我转投了Hexo的怀抱。
最初用的csdn,感觉自由度过低(不能任意DIY),很是不爽;
后来用飞行员的衡天主机搭了个WordPress,然而维护太繁琐。
累觉不爱的我听从Smoogle用了Hexo,现在想来静态blog也是极好。
用Markdown写博文,这才符合我这种屌丝码农的身份嘛……
Hexo是一个快速、简洁且高效的博客框架。
Hexo使用Markdown(或其他渲染引擎)解析文章,在几秒内,即可利用靓丽的主题生成静态网页。
如果您在使用过程中遇到问题,请查看问题解答,或者在GitHub、Google Group上正面刚作者。
笔者以Windows为例
$ npm install -g hexo
$ cd
跟$ ls
命令,进入一个文件夹作为Hexo的本地存储区域$ hexo init
$ npm install
新建完成后,指定文件夹的目录如下:
1 | . ├── _config.yml ├── package.json ├── scaffolds ├── scripts ├── source │ ├── _drafts │ └── _posts └── themes |
其实到这里已经差不多了,剩下的只是如何去编辑、查看、发布。
\_config.yml
的deploy部分,注意你在此处用的repository必须名为your_user_name.github.io
(忽略大小写)1 | deploy: type: git repository: https://github.com/ChouUn/chouun.github.io.git branch: master |
$ npm install hexo-deployer-git --save
安装部署插件$ hexo d -g
进行部署http://your_user_name.github.io
察看效果ps. 新版本的hexo已经不再支持github,被新的git取代了。
pss. 过程中可能要求你调用这两个命令
1 | $ git config --global user.email "chouunsoft@gmail.com" |
psss. 为了避免命名空间冲突,每个用户对应唯一一个github.io,请对自己负责不要乱取名字
1 | ### 完整命令 |
一般使用$ hexo n
新建文章,然后$ hexo s -g
实时察看效果,最后$ hexo d -g
部署到github上。
ps. $ hexo server -s
可以运行静态服务,以确认生成是否成功,如果有异步,$ hexo clean
以后再$ hexo d -g
一次。
They’re ported from Octopress and can help you insert specific contents in posts quickly.
译:这些功能是沿袭Octopress,以便你快速插入特殊内容。
对书籍的引用
露と落ち、露と消えにし、我が身かな、浪速のことも、夢のまた夢。
1 | {% blockquote Toyotomi Hideyoshi, 辞世の句 %} 露と落ち、露と消えにし、我が身かな、浪速のことも、夢のまた夢。 {% endblockquote %} |
对网文的引用
[範例]【WB】減少洩漏、提高效率、數據系統
雖然我的系統很舊了,不過看最近在研究這東西的人還不少
1 | {% blockquote Weberkkk http://forums.wasabistudio.ca/viewtopic.php?t=23408 %} [範例]【WB】減少洩漏、提高效率、數據系統 雖然我的系統很舊了,不過看最近在研究這東西的人還不少 {% endblockquote %} |
代码块
1 | #include <iostream> |
1 | {% include_code helloworld lang:cpp helloworld.cpp %} |
如果有自己的域名,在
\Hexo\source
内创建一个文件名为CNAME
(没有后缀)的文件,在里面加入自己的域名,如:xuzhenyang.com
,部署后就能在浏览器里进入自己的域名看到自己的博客啦~
CNAME文件,起到的只是一个跳转作用。此处利用chrome右键审核元素 -> Network
,勾上保留日志Preserve log
,打开自己的blog,你会发现一个Method为GET、Status为301的文件。
1 | Remote Address:103.245.222.133:80 Request URL:http://chouun.github.io/ Request Method:GET Status Code:301 Moved Permanently (from cache) Date:Fri, 07 Aug 2015 07:59:18 GMT Location:http://fateud.com/ Server:GitHub.com |
显然你需要一个自己的域名,不然填什么都是为别人做嫁衣。我的fateud.com
是从狗爹(GoDaddy)上入的。
win + R
输入cmd
回车,输入ping your_user_name.github.io
回车,得知自己ip是103.245.222.133@
和www
,记录值为ip,保存SETTINGS
里,管理Nameservers
,选择Custom
,添加记录f1g1ns1.dnspod.net
和f1g1ns2.dnspod.net
www
等开头,如mxbiz1.qq.com
之类的,网站邮件收发,我采用了腾讯的企业邮箱图片容易拖慢博客的速度,加上github在国内访问时好时坏,同时为了方便博客的迁移,所以用上了七牛图床。七牛支持防盗链、日志,且自带处理功能,以完成水印、缩放、裁剪,甚至支持用户的深度定制。
每月免费额度:存储空间10GB、下载流量10GB、10万次PUT请求、100万次GET请求。不得不说是相当优厚的条件,还可以通过七牛邀请来获取额外额度。顺便提及一下「key-value 存储系统」。
Q:七牛云存储支持目录或文件夹概念么?
A:七牛云存储的服务端是一个 key-value 系统,而非树形结构,因此也没有“目录”或者“文件夹”的概念。
其中,value 是用户上传到七牛云存储的文件,key 是一个用户自定义的字符串,用于在服务端标识这个 value 这个文件。一个 key 对应一个 value,因此,在每个空间(Bucket)中,key 必须是唯一的。
key 中可以包含斜杠“/”,让你感觉起来像目录结构,比如 “a/b/c/d.txt” 这个 key,在服务端只对应一个文件,但它看起来像 a 目录下的 b 目录下的 c 目录下的文件 d.txt。实际上,服务端是不存在 a、b、c 三个目录的,也没法创建目录。
$ npm install hexo-qiniu-sync --save
安装七牛插件private
的,被坑了很久$ hexo qiniu s
进行第一次同步,/hexo
下会出现一个与local_dir
属性同名的文件夹,里面的分类你懂的1 | {% qnimg exam.png title:图片标题 alt:图片说明 'class:class1 class2' %} |
ps. 第二步中的urlPrefix
因人而异,比如我是http://7xjw62.com5.z0.glb.clouddn.com/
,所以你们别被坑了
pss. 因为对$ hexo deploy
的支持尚有问题,我们需要手动进行上传..
Writing
Generating
Server
Deployment
Tag Plugins
个人喜欢用稳定的Sublime 2,下载了官方原版(无限试用期)。
按下Control + BackQuote
调出Console,键入一下代码并回车。所谓BackQuote就是~
键中的反引号。
1 | import urllib2,os; pf='Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler( ))); open( os.path.join( ipp, pf), 'wb' ).write( urllib2.urlopen( 'http://sublime.wbond.net/' +pf.replace( ' ','%20' )).read()); print( 'Please restart Sublime Text to finish installation') |
1 | import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ','%20')).read()) |
若是安装成功,重启后能在Preferences -> Package Settings
中找到Package Control
。
Control + Shift + P
,键入Package Control: install Package
回车,键入Markdown Extended
回车,即可安装该Package。Monokai Extended
。打开Preferences -> Settings - User
,在一对{}
内的开头添加以下语句:
1 | "color_scheme": "Packages/Monokai Extended/Monokai Extended Bright.tmTheme", "theme": "Soda Dark.sublime-theme", |
勾上View -> Syntax -> Markdown Extended
.md
文件看看高亮效果,下图仅供参考。因为篇幅有限,对于md的语法部分,原谅我不予赘述。
Jacman是为Hexo设计的一款清新且具有响应式的主题,拥有更丰富的特性并支持了很多的国内服务。Jacman始于Pacman修改而来。
1 | $ git clone https://github.com/wuchong/jacman.git themes/jacman |
Jacman 需要 Hexo 2.7 及以上版本
修改博客根目录下的配置文件_config.yml
,把theme
的值修改为 jacman
.
修改/themes/jacman/_config.yml
中的配置。通过配置指南wiki了解更多
$\frac{\partial u}{\partial t}
= h^2 \left(
\frac{\partial^2 u}{\partial x^2} +
\frac{\partial^2 u}{\partial y^2} +
\frac{\partial^2 u}{\partial z^2}
\right)$
以上公式由以下代码生成,调用了$Mathjax$的接口
1 | $\\frac{\\partial u}{\\partial t} = h^2 \\left( \\frac{\\partial^2 u}{\\partial x^2} + \\frac{\\partial^2 u}{\\partial y^2} + \\frac{\\partial^2 u}{\\partial z^2} \\right)$ |
此功能需要在配置里修改如下项mathjax: true
,抑或在每个文章中手动添加。
用一对$$
会单独占用一行,用一对$
会作为内容的顺延。
该主题自带disqus和duoshuo支持,把shortname填上去即可。
1 | #### Comment duoshuo_shortname: fateud ## e.g. wuchong your duoshuo short name. disqus_shortname: chouun ## e.g. wuchong your disqus short name. |
更多功能与信息请查阅:Jacman官网
文档 | Hexo
hexo你的博客 | 不如
Hello Hexo | 飞行员手册
Daring Fireball: Markdown Syntax Documentation
配置Sublime Text使用Markdown,语法高亮,生成HTML_技术党
Sublime Text 2 入门及技巧 | Lucifr
MarkdownEditing:Sublime Text 2 的 Markdown 利器 | Lucifr
Welcome to Hexo! Check documentation for more info.
以上一行字,表明我转投了Hexo的怀抱。
]]>You must pave your own way to greatness.
20151210
皇權的合法性不是一個可以拿來討論的東西。
20151204
Does it ever get cold on the moral high ground? —— from Downton Abbey
20151122
在中國,任何超脫飛揚的思想都會砰然墜地的,現實的引力太沉重了。
20151027
海不擇細流,故能成其大;山不拒細壤,方能就其高。
20151025
水深則流緩,人貴則語遲。
20151012
人吃土一輩,土吃人一回。
20151010
三毛:刻意去找的東西,往往是找不到的。天下萬物的來和去,都有他的時間。
]]>You must pave your own way to greatness.
20151210
皇權的合法性不是一個可以拿來討論的東西。
20151204
Does it ever get cold on the moral high ground? —— from Downton Abbey
]]>$Github$上有Release和Debug两种版本。作为头文件使用的,建议下载Release版本。
平时写代码的时候,可以通过#include <...>
的方式,来调用这些功能。提交的时候,把这些文件的所有内容全选,然后替换掉include语句即可。因为我使用了ifndef
进行检测,不会出现multi-define
之类的蠢事,可以安心食用。
Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.8.1\include\c++
MinGW\mingw32\lib\gcc\mingw32\4.8.1\include\c++
里C++ Project
Source Folder
Properties -> C/C++ General -> Paths and Symbols
,Includes 选项卡
,在GNU C++
中点Add
Directory
填/工程名/文件夹名
Is a workspace path
,按OK即可ps. 不同版本的文件夹会有些许差异
pss. 建议以后写程序一直用这个工程,方便你管理源码,一如CodeWorld。
20151222: 升级至城堡时代(c++11)
20150912: 添加了matrix.h
20150911: 添加了anti-stackoverflow.h,解决了g++爆栈问题
20150904: 修改了sparse的运行机制,添加了两个二元运算符
20150822: 添加了discrete离散化模块
20150821: 添加了csl_algo中的euler函数
20150820: 删除了csl_math中的冗余内容20150815: 你以为我真的会写?20150503: 今后代码将直接与GitHub同步
20150503: 更新了bigint.h、fenwick.h
20150428: 更新了csl_math.h
20150427: 更新了csl_std.h
1 | /* |
1 | // Name : ChouUn's Standard Library 纸农の标准库 |
1 | /* |
1 | // Name : Mathematical Computation 数学计算 |
1 | /* |
1 | // Name : Algorithm 算法 |
挖坑重写
1 | /* |
1 | // Name : Fenwick Tree 树状数组 |
1 | //@ Including Header |
1 | /* |
1 | // Name : Sparse Table 稀疏表 |
1 | // Name : Matrix 矩阵 |
1 | // Name : BigInt.h 大整数 |
1 | /* |
1 | // Name : Discretization 离散化 |
1 | // Name : Graph 图论 |
1 | // Name : Manacher Algorithm 马拉车算法 |
考虑到一本招生,略微提高难度;预计可做题4-5道,然而没到预期。
http://acm.zucc.edu.cn/JudgeOnline/problem.php?id=1606
解题报告:水题。
分支结构的应用,做不出建议转专业。
http://acm.zucc.edu.cn/JudgeOnline/problem.php?id=1607
解题报告:水题。
gets容易受到系统环境影响,建议使用scanf输入。
本来查询次数 $q$ 较大,需要预先处理出每个字符的总数,再处理询问。
http://acm.zucc.edu.cn/JudgeOnline/problem.php?id=1608
解题报告:逻辑题。数学归纳法。
输出 $n - m + 1$ 即可。
证明部分详见一个关于数学归纳法的悖论问题:到底是第 N 天有 N 个红眼睛自杀,还是什么都不会发生? - 知乎
http://acm.zucc.edu.cn/JudgeOnline/problem.php?id=1609
解题报告:数学题。
递推公式为 $f_{n} = f_{n-1} + (n-1)f_{n-2}$。
第 $n$ 个人如果跟外人脱单,剩下 $n-1$ 个人有 $f_{n-1}$ 种情况;
如果跟 $n-1$ 里的其中一个人脱单,有 $n-1$ 种选择,而剩下 $n-2$ 个人有 $f_{n-2}$ 种情况,根据乘法原理相乘即可。
http://acm.zucc.edu.cn/JudgeOnline/problem.php?id=1610
解题报告:模拟题。
先用数组记录零到九的 $LED$ 灯亮灭情况,然后用数组记录两种数字间的差异多大。
这样预先处理好,对于输入的 $M$ 每一位,分开来考虑差异范围内数字的情况一共几种,根据乘法原理相乘即可。
http://acm.zucc.edu.cn/JudgeOnline/problem.php?id=1611
解题报告:模拟题。字符串处理。
主要是处理部分复杂。
需要注意的是,元音只有 $a, e, o, u, i, v$,声母包括 $zh, ch, sh$。
对于一个元音,如果前一个也是元音,则忽略;否则前面必为声母,声母可能一位或两位。
先把所有缩写预先处理好,每次查询只要用strstr函数比较即可。
http://acm.zucc.edu.cn/JudgeOnline/problem.php?id=1612
解题报告:逻辑题。小学奥数题。
对方是知道月份的:
显然第一第三两种情况,是话语 $2$;第二种情况,是话语 $1$。
所有我们枚举出生月份,加以判断即可。
http://acm.zucc.edu.cn/JudgeOnline/problem.php?id=1613
解题报告:数学题。
用 $f_n$ 表示土鸡数量,用 $s_n$ 表示总记录数。
根据题意得出 $f_n = f_{n-1} + f_{n-2}$,对其求和计算 $s_n$,很容易发现 $s_n = f_{n+2} - 1$。
因为题目给了你 $f_n, s_n$,直接得到 $s_{n-1}, s_{n-2}$,整个数列昭然若揭。
而且为了简化问题,题目给出数据 $n - k \leq 10$,所以循环十次内就能求出答案。
出题人把 $n$ 的实际值限定在 $32767$ 内,这样还是有人强行用递归导致 $TLE$。
http://acm.zucc.edu.cn/JudgeOnline/problem.php?id=1614
解题报告:贪心题。谷歌面试出过。
先将两个数列排序,然后进行贪心。
两两对应后,有三种情况:同负,异号,同正,即:1
A: - + +
B: - - +
对于同号的两种,通过比较 $A_l B_l$ 与 $A_r B_r$ 的大小,决定取哪一个。
对于异号的部分,假如还需要取k对,那么从小到大取出k个正数作为第一行,从大到小取出k个负数作为第二行,两行都由小到大排列,最后从左到右对应相乘想加即可,切勿交叉相乘
下面是组容易错误的数据,建议替换 $M$ 来理解一下本质:
5 3或4
-1000 1 10 100 1000
-1000 -100 -10 -1 1000
http://acm.zucc.edu.cn/JudgeOnline/problem.php?id=1615
解题报告:构造题。多校2015第九场。
通过相减得出愉悦值之差(记得取模),然后问题转化成寻找相同的两项,这样能很方便构造出相反的策略。
每次找出愉悦值最大的物品合并,愉悦值相减作为新物品的愉悦值。
这样对于 $n$ 个物品,愉悦值最大为 $m$;
第一轮,$n/2$ 次操作之后,愉悦值最大为 $\frac{2m}{n}$;
第二轮,$n/4$ 次操作之后,愉悦值最大为 $\frac{8m}{n^2}$;
第三轮,$n/8$ 次操作之后,愉悦值最大为 $\frac{64m}{n^3}$;
三次之后愉悦值最大只有6了,显然能出解,所以最后倒着 $dfs$ 把分配方法解出来即可。
窝不会告诉你们这题有彩蛋。
刷题很重要,思考不能少;只刷不思考,药丸是吃枣。
]]>考虑到一本招生,略微提高难度;预计可做题4-5道,然而没到预期。
]]>|9.21| 战五猹网络部,区区断网岂能拦得住我,求你把L2TP之类的穿透给封印了,不然我还是强行能用VPN啊。
又值開學季,慘無人道的十一點斷網不速而來,最近準備區域賽、急需大量資料的我,無法接受慘痛的現實。
轉念一想,實驗室是通宵供電供網的,然而天天睡實驗室對身體不利,所以我決定通過代理來解決上網問題。
我先回憶了上個學期架設vpn的過程,進行了同樣的步驟。
在作爲服務器的電腦上,新建一個傳入連接。
右鍵屬性,“用戶”選項卡,除去該項的勾“要求所有用戶對其密碼和數據的安全進行保護”。
在作爲客戶端的電腦上,設置新的連接,連接到工作區,使用我的Internet連接,Internet地址填服務器的IP。
右鍵屬性,“安全”選項卡,VPN類型使用L2TP,數據加密可選,允許使用這些協議(PAP、CHAP、MS-CHAP v2)。
連接成功,然後血崩。喂,根上學期的劇本不一樣啊。我開始思考,L2TP能連,然而無法上網。
// 警告:這一部分已經驗證非關鍵作用,請無視
後來我想起,自從上次斷電以後,實驗室的路由就怪怪的,難道禁止了L2TP穿透?
於是我強行黑進了實驗室的路由,去尋找問題的緣由。
在“轉發規則-虛擬服務器”(也就是很多地方所說的映射關係),我發現了一片空白,腦中也一片空白。
隨便一搜,找到老司機所發佈的長文,裏面有如下一段。我把死馬當活馬醫,添加了進去。
然後嘗試著訪問百度,哇哦!還是血崩…
我原以爲要跟上次一樣不了了之了,結果chrome虎軀一震,竟然連上了,真是xnmbyy!
測試了一下Google,秒連,說明並不是錯覺。也懶得糾結這麼多了,能上就好。
聽說11月以後,通過撥號能上內網,但是子網掩碼默認是四個255,導致我無法ping通機房。
我用netsh命令改成了255.255.255.0,還是可以連vpn的,靜候11點斷電斷網,保佑。
然後到了11點這一刻,告訴我網線已被拔出,日媽。
本來就能直接連內網,所以你弄個PPPOE有瘠薄用?
弄得斷網以後能上內網一樣,不知道網絡部是不是用菊花思考的。
衷心祝願你們後裔的消化系統是一個單向棧。
vpn在連接上有偏差,我是要負責的!
我沒有說vpn使用者要欽定,沒有任何這個意思。
但是你問——一定要問我——vpn密碼是多少,我可能回答你說“無可奉告”。
|9.21| 战五猹网络部,区区断网岂能拦得住我,求你把L2TP之类的穿透给封印了,不然我还是强行能用VPN啊。
]]>Lua is a powerful, fast, lightweight, embeddable scripting language.
Lua combines simple procedural syntax with powerful data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, runs by interpreting bytecode for a register-based virtual machine, and has automatic memory management with incremental garbage collection, making it ideal for configuration, scripting, and rapid prototyping.
別的我就不多安利了
table是類似class的hash_map,由data和method兩部分組成。簡而言之,數據和行爲是分離的,後者在Lua中稱爲metatable。
metatable有很多特有的鍵,在此我們粗暴的認爲特有鍵類似c++中的操作符,它們的值一般爲function或table。
我們可以通過setmetatable來賦予table不同的動作。
1 | t = {} -- 普通的table |
以上代碼可以縮略爲:1
t = setmetatable({}, {})
1 | other = {} |
__index
類似於[]
操作符__newindex
類似於[]=
操作符1 | t = setmetatable({}, { |
rawget
和rawset
可以避免調用重載後的操作符(__index和__newindex)1 | t = setmetatable({ 1, 2, 3 }, { |
運算符只能是函數
一個機智的計數器
1 | function InitCounter() |
德堪邀請我入坑,考慮了一下還是可行的。
現在手頭還沒拿到項目,所以自己造輪子玩。
Lua is a powerful, fast, lightweight, embeddable scripting language.
Lua combines simple procedural syntax with powerful data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, runs by interpreting bytecode for a register-based virtual machine, and has automatic memory management with incremental garbage collection, making it ideal for configuration, scripting, and rapid prototyping.
別的我就不多安利了
]]>因爲我的愚蠢,坑了H,最後才出5題,只拿了銀。
這麼一看,是不是與2015 ACM/ICPC Asia Regional Changchun Online情與貌,略相似。我不長記性啊。
中文隊名:冷酷的奴隸主
英文隊名:Grim Patron
出處是「爐石傳說」中的一張卡牌,效果是受到不致死的傷害能分裂出同樣一個3/3的分身。
寓意不是屠場,而是奮鬥;其實主要是因爲「卞」和「颼颼」喜歡爐石,我就想了這樣一個名字。
雖然經費緊張,boss們還是決定給去長春的我們定機票,相比之下南陽衆的待遇就差很多了,導致我現在還是有負罪感。
早早到了長春機場,一出門便被妹子勾搭了:你們是來參加ICPC的麼?起初以爲志願者,原來是如假包換的女隊。
三點時的士換班,我們打不到車,又不開森,一怒之下直接走到了學校,簡直了。
進了學校以後,志願者妹紙的腿不錯..呃,我是說腳力不錯,先帶着我們先去領了參賽資料和制服。
每個隊伍只有一個袋子,不像上海每人一個,還有google爸爸的本子送。畢竟贊助商都去ccpc了。
別的學校似乎都有吉祥物可以領..嗯,哼,yahari,我們沒有。繼續趕往賓館。
現在問題來了..賓館在哪裏..果然不太好找..
打開房門,第一感覺就是狹窄。好歹是三人間,鎮海的蛟川就高大上多了,你們好歹是省會= =。
房間裏連熱水壺都沒,只有熱水瓶去接水。
寫字檯上還有個電視。液晶?想多了。方方正正一個大箱子。現在已經被我們安置在桌下了,騰空間。
然後就是展示制服了,聽說ccpc是粉紅色的,笑cry。
我們的充其量也就是個校服,還是「無印良品」,連個logo都沒。
你不印學校標識也就算了,連acm的標識都懶得弄上去,這讓我如何穿出去吹逼。
看來這個鍋又要給沒有贊助商了。
下圖是不願透露正臉的帥氣的「颼颼」學長。
晚上就是幸福的遊戲時間,因爲網絡不好,我們只能打war3rpg。
比如《術士戰爭》兩個人追着一個懟,導致「颼颼」險些棄坑。
第二天清晨,初中學弟便來面基了,多年未見甚是想念他們,聊了很多、很久。
不過小學弟的住宿環境似乎比我們還差,真是喜聞樂見。
下面就是駐紮在他們天花板上的瓢蟲,土語叫「花大姐」。
中午吃飯面了網友「王太虛」,賽場上面了「obsolescence」。
下午熱身賽,測試了一些東西,然而惡意提交的人太多,來不及返回結果。
晚上又是快樂的rpg時光,我們都中毒了,奠定了爆銀的節奏。
榜單:http://acm.nenu.edu.cn/board/
所以多交的幾發,全是因爲我的愚蠢。
不然罰時少,有空開E,或者搞出A,有望衝金。
最後銀牌滾粗。
不吹不黑,長春的市區建設,真心跟浙北縣級市不相上下,充其量馬路寬泛一點。
不過飛機來的途中,阡陌交通,村落如聚,在我處實屬不易見到的景象。
長春的哥也是有點屌的,相當有「性格」,不過也有很熱心的老司機,會老馬識途。
不過去過別的城市以後,我對杭州的感官也有所改變。
我已經習慣的,被我當成了空氣一般自然而然的東西,原來並不是理所當然的。
我以爲一個城市的市容市貌就應該是這樣整潔美觀,
我以爲一個城市裏的市區就應該有山水湖泊,
我以爲生活本來就應該是春夏秋冬都有步可以散,
我以爲城市裏的圖書館hifi音樂廳週末就會有免費的演唱會可以聽…
我以爲這些就像吃飯睡覺一樣正常。
如今我離開了才明白這日子有多麼奢侈。
畢竟,車讓人,本不是所有城市都有的現象;
無論規定抑或素質,它就擺在那裏,不折、不扣。
因爲我的愚蠢,坑了H,最後才出5題,只拿了銀。
這麼一看,是不是與2015 ACM/ICPC Asia Regional Changchun Online情與貌,略相似。我不長記性啊。
在一直沒有寫出能正常運行的平衡樹模板,這個坑拖了很久(然而是取巧的)。
還有一個就是魔方,之前打了27的表發現還要考慮色向和,怎麼都wa簡直崩潰。
http://acm.hdu.edu.cn/showproblem.php?pid=5246
排個序,貪心搞一搞,過了。
1 | //@ Including Header |
http://acm.hdu.edu.cn/showproblem.php?pid=5247
維護三種值:
因此對於區間$[i,i+k-1]$:
滿足$y - x + 1 = k$,約束了數據範圍;
且$z < i$,約束了重複元素。
1 | //@ Including Header |
http://acm.hdu.edu.cn/showproblem.php?pid=5248
二分答案,然後貪心之。
第一頁嗑瓜子。
1 | //@ Including Header |
http://acm.hdu.edu.cn/showproblem.php?pid=5249
第一頁第三個。
1 | //@ Including Header |
1 | //@ Including Header |
1 | //@ Including Header |
http://acm.hdu.edu.cn/showproblem.php?pid=5250
對發生變化的48個面打個表,然後暴力跑一跑能過。
我這裏爲了衝榜首,用了找循環節然後求gcd的方法。
1 | //@ Including Header |
http://acm.hdu.edu.cn/showproblem.php?pid=5251
最小包圍矩形。
1 | //@ Including Header |
在一直沒有寫出能正常運行的平衡樹模板,這個坑拖了很久(然而是取巧的)。
還有一個就是魔方,之前打了27的表發現還要考慮色向和,怎麼都wa簡直崩潰。
すみません、すみません、すみません、
因爲我的愚蠢,坑了1010,最後才出6道。
http://acm.hdu.edu.cn/showproblem.php?pid=5437
朋友來訪,室內空間有限,優先讓禮物貴重者進入。
有$k$個朋友依次前來,第$i$個叫$B_{i}$,帶了價值爲$v_{i}$的禮物。
開$m$次門,第$i$次開門在第$t_{i}$個朋友來時,放$p_{i}$個朋友入室。
有$q$次詢問,求第$n_{i}$個進入者的名字。
1 | //@ Including Header |
http://acm.hdu.edu.cn/showproblem.php?pid=5438
一個無向圖有$p$個點,第$i$個點點權$v_{i}$;$m$條邊,第$i$條邊連接$a_{i}$和$b_{i}$。
刪除所有度小於$2$的點,求點個數爲奇數的聯通塊的所有點權之和。
1 | //@ Including Header |
http://acm.hdu.edu.cn/showproblem.php?pid=5439
令$f_{n}$爲$n$出現最後的位置,$f_{2}=3$,$f_{3}=5$,$f_{4}=8$
給你一個$n$,求$f_{f_{n}} \bmod 1000000007$的值
1 | //@ Including Header |
http://acm.hdu.edu.cn/showproblem.php?pid=5441
一個無向圖有$n$個點,$m$條邊,第$i$條邊連接$a_{i}$和$b_{i}$,邊權爲$d_{i}$。
有$q$次詢問,給你一個整數$x$,求不存在邊權大於等於x的邊時,聯通的點對共有多少。
1 | //@ Including Header |
http://acm.hdu.edu.cn/showproblem.php?pid=5442
給你一個長度爲$n$的字符串,求串的正反循環的所有同構中,字典序最大的下標和方向。
如果字典序相同,輸出下標最小的;如果下標相同,輸出方向爲正的。
算法一:
算法二:
後綴數組搞一搞
1 | //@ Including Header |
http://acm.hdu.edu.cn/showproblem.php?pid=5443
給你一個長度爲$n$的序列,進行$q$次詢問,求區間$[l,r]$內最大值。
直接把$Sparse Table$往上一套,聽說暴力也能過。
1 | //@ Including Header |
http://acm.hdu.edu.cn/showproblem.php?pid=5444
一棵$n$個節點的二叉樹,從右往左編號爲$1 \dotsb n$,按高度從小到大告訴你節點的編號。
有$q$次詢問,求點$x_{i}$應該如何到達。
區間內,根爲高度最低的節點,然後同理劃分左右子樹。
然後類似於二分搜索樹的思路,找到詢問的節點即可。
1 | //@ Including Header |
http://acm.hdu.edu.cn/showproblem.php?pid=5446
給你$n,m,k$,以及$k$個質數$p_{i}$,模數$M = \prod_{i=1}^{k} p_{i}$,求$C_{n}^{m} \bmod M$
1 | //@ Including Header |
今朝是先父小生日,願逝者安息,生者堅強。
]]>すみません、すみません、すみません、
因爲我的愚蠢,坑了1010,最後才出6道。
細心的讀者會發現,標題似乎少了「暨」之前的一些字。
此處不多加點評,只因我個人覺得離勝利還遠得很,禮儀、文化、抑或更多。
還是講正事。
今朝我在投影儀前觀看了閱兵,70響禮炮轟鳴之時,主播解釋這是爲了紀念70週年,拉開大會的序幕。
70週年70響,80週年80響,我是多麼希望有成千上萬響的那一天,即便此身已化作一剖黃土。
弔古傷今,我不禁潸然淚下,默默趴在桌上抽噎。此刻憑誰都不曉得我心中的風起雲涌。
這幾日約莫是我的大姨父,特別容易受傷,軀體或者精神。下面又有一則撩撥我心絃的短文。
(木村成彥)一說起養母,他想到了自己十幾歲時,養母在零下40攝氏度背他去醫院看病:
他想起了養母40歲就掉光了的牙齒,「我小時候身體弱,她沒有奶,聽說高粱汁可以養活,她用嘴嚼煮熟的高粱米,趁熱放到白布上擠出汁水,牙在那時被燙壞了。」
「她一直說:『小子,等你工作了就給我鑲牙。』可我工作就趕上了『文革』,一年的錢都不夠鑲牙,她終於沒等到我給她鑲牙的那一天……我對不起她。」木村成彥泣不成聲。
這是段樸實無華的口語,卻勾起我潛藏深處的感動,眼眶險些綻出了淚。
子欲養而親不待,身爲子女的過失莫過於此。
一度試圖欺騙自己,科技發達、壽元綿長,盡孝之日尚多。
安知命運的擺佈,令愛你的與你愛的、宛如流沙,輕易從指縫溜走。
三嬸是個好媽媽,我感慨地想。不知道鄭南音自己知道不知道,世界上有個人這麼在意她的想法和感覺——哪怕是不理解也要盡力維護,這是多大的福氣。
無論觜上是否承認,我深切的瞭解我娘對我的寬容。
不過我並不希望如此,甚至用粗暴的方式拒絕。
因爲這會讓我有種負罪感,而我選擇成爲懦弱的逃避者。
警告:以上圖文與正文無關
]]>
|8.23| 不存在上帝,因而人类没有救赎
追了這禮拜的「暴走大事件」,直至海龜八分鐘,險些潸然淚下。
無法想象它鼻中貫穿着人類的惡,竟能戰戰兢兢得捱過那麼多辰光。
當拍攝者們爲它施救之時,我如芒在背,卻強忍下滑動進度條的衝動。
這是人類賦予自己的罪,我沒有選擇的權力,只能將苦澀默默飲盡。
不過仔細看了彈幕的內容,感覺曾經充滿愛的B站,也漸漸踏上A站的老路。
彈幕中羣衆主要分成兩派:
在此我不武斷地評判他們的對錯,僅對海龜的遭遇報以深切的同情與深刻的懺悔;
因爲除卻以上兩者,還有一種利用彈幕互相撕逼的噴子,一般稱呼他們爲網絡暴民。
於此,我能真切得感受到,網絡上人與人之間正在發酵的、沒來由的仇視。
戈爾·維達在《熱愛飛翔》中所說:我們已經失去了很多人性的因素。
網絡上的大衆會認爲他們站在一種天然的正義的地位,並以此試圖控制輿論——這在他們平時的生活中是無法想象的。
他們可以給素昧平生的人製作痛苦,卻不用承擔相應的後果,滿足了自己原始的作惡的本能。
他們並沒有被輕易地賦予了這項權利,卻因爲網絡缺乏有效的監管,達到了同樣的目的。
他們所過之處散播的,是狂歡與衝動,是暴力與毀滅,是對理性與尊嚴赤裸裸的踐踏。
他們自以爲擁有獨立判斷、並追求某種獨特的價值觀,但是往往成爲鬥爭的犧牲品。
他們往往相信自己是理性的,甚至催生出了相應的自信。
他們一如勒龐《烏合之衆》所說:羣體行爲可能是突然的和極端的;智力過程可能是初步的和機械的。
他們的麇集日漸擴增,他們的思想如瘟疫一般蔓延,即便是理性的人也會像牲畜一般行動。
他們不需要「磚家」、「叫獸」,因爲無所不知的他們便是真理。
他們也不需要統計學知識,一鳞半爪足以幫助他們作出正確判斷。
他們在現實中過着最齷齪的生活;
他們在網絡中當着最促狹的觀衆。
他們沒有過去,更不需要未來。
一如李海鵬所說,我們在寒夜中彼此仇恨,問題的根源卻遠在天邊。
不想刻意去批判一些物事,因爲我素來不擅長講道理,只會用些許粗暴的方式表達。
故此,直至這種境地,只是想很悲哀的、卻理所當然的反問自己一句:
這幾天開始軍訓,只好抽出零碎的時間來完成,將斷裂的思路,一一接續在博文之中。
順帶一提,城院軍訓的本質是磨滅個性的瞎折騰,我從中收穫的是無聲的反抗、而非一味的服從。
在軍方和政策的雙重脅迫下,各種所謂的愚蠢的規定是無法改變的;我等「成功」成爲了當代的犬儒主義者。
順便附上徵文,命題莫名其妙,寫的自然也莫名其妙。
我的軍訓、我的中國夢
第一次看到這個標題的時候,其實我是拒絕的,因爲總有些奇怪的命題讓我無從入手。我的軍訓,就是我的軍訓,至於爲什麼會跟中國夢扯上關係,我不甚明了,也漠不關心。當然這不妨礙我完成作文,因爲作文是種模式,就好似要撒一個官方的謊言,必須有時間人物地點,尤其關鍵的是必須有一個向上的主題。反正作爲中國式的文人,要求擁有無中生有的天賦;無論合理抑或不合理的要求,我已身經百戰了。
我先理性的認識了一下,我的軍訓,最主要是完成《兵役法》所規定的義務。這是最直接的來源,也是諸多大學生噩夢的開端。我不能說軍訓是不好的,軍訓好歹是有用的。你若強行要問軍訓好在哪裏,我不能武斷地回答你,因爲這樣容易對不起良心。
要說提高組織性紀律性吧,避不開暴曬、站軍姿、練步法之類的陳詞濫調。談及正步,個人經歷而言,學的正步不出一週便會忘光,以至於我初中高中大學學了三次,仍然沒有避免淪爲了回憶。正步自然不可能幫你找到女友,甚至不排除女友覺得你走路姿勢怪異決意分手的可能,更沒跟那些狗皮膏藥一樣,有包治百病的功效。所以事後我也沒覺得我將會多些服從上級的意識,甚至叛逆中二病會更加厲害。因爲你不能強迫我幹一些莫名其妙的事情,這會顯得我是個腦殘,必須聽別人的話才能達到某種目的。所以教官和學員之間,肯定有一個是傻子;而且作爲正常人,我不會去認爲自己是個傻子。這樣一圈兜下來,我也沒發現所謂的綜合素質有了長足的增長,僅有的變化就是更黑了點。
要說鍛鍊學生吃苦耐勞吧,更顯得蒼白無力,因爲強制性的吃苦未必能夠耐勞。哪怕軍訓了,平時上課該玩手機的繼續玩,該睡覺的也跟我一樣繼續睡,完全不受時空環境轉移,只要我高興就好。上課吹空調,下課打遊戲,平時不掛科,績點過的去,老師不必爲你操心笑還來不及,哪裏會跳出來讓你吃點苦頭。
至於我的中國夢,是無關乎黨啊、政府啊、軍隊啊之類的。因爲中國夢,理應是所有國人所共有的,不受搞七捻三的外界因素干擾。例如我想要華夏富強抵禦外虜,也不見得非得投筆從戎扛槍打靶;坐在電腦前,搞搞信息戰,豈不美哉?這樣看來,網絡恐怕也是一個沒有硝煙的戰場吧,淡化了軍訓的意義。
如Beyond所傾訴的:
無助與冰凍的眼睛/
流淚看天際帶悲憤/
是控訴戰爭到最後/
傷痛是兒童所以我的中國夢,就是我能安安心心的睡在中國做夢。
於乙未年甲申月丙子日
UPD1:軍訓成績出來了,我值崗一次、看槍一次、通訊稿次次上交,竟然比基準分還要低。
我詢問徐曉波,給我的答覆竟然是通訊稿漏交,真是xnmbyy;後來馬晨斌查實,加分也沒給我加。
我對城院的軍訓,算是徹底的失望了,喜歡瞎折騰,你們開心就好。
]]>|8.23| 不存在上帝,因而人类没有救赎
約定:
斜體字:文讀音
粗體字:白讀音
空缺:有音無字
全清 | 次清 | 全濁 | 次濁 |
---|---|---|---|
/p/ 幫 | /pʰ/ 滂 | /bʱ/ 並 | /m//ʔm/ 明微 |
/ʔv/ 罕見 | /f/ 非敷 | /vʱ/ 奉 | /ɱ/ |
/t/ 端 | /tʰ/ 透 | /dʱ/ 定 | /n//ʔn/ (泥孃洪) |
/ȶ/ | /ȶʰ/ | /ȡʱ/ | /ȵ//ʔȵ/ (泥孃疑細)日 |
/k/ 見 | /kʰ/ 溪 | /gʱ/ (羣洪) | /ŋ//ʔŋ/ (疑洪) |
/ʦ/ 照(精洪)知 | /ʦʰ/ 穿(清洪)徹 | /ʣʱ/ 牀(從洪)澄 | |
/s/ 審(心洪) | /zʱ/ 禪(邪洪)日 | ||
/ʨ/ (精細) | /ʨʰ/ (清細) | /ʥʱ/ (從羣細) | |
/ɕ/ (心細) | /ʑʱ/ (邪細) | ||
/ʔ/ 影 | /h//x/ 曉 | /ɦ/ 匣 | /j/ |
/l//ʔl/ 來 | |||
/ɲ/ |
開口呼 | 齊齒呼 | 合口呼 | 撮口呼 |
---|---|---|---|
陰聲韻 | |||
/i/ 微廢齊 | /ɯ/ 汝烏夫 | /y/ 余虞雨 | |
/ɿ/ 此水之 | /ʮ/ 諸粗鬚 | ||
/a/ 泰鞋買 | /ia/ 茄姐夜 | /ua/ 壞乖快 | |
/o/ 麻佳差 | /io/ 亞家雅 | /uo/ 瓜話瓦 | |
/e/ 岁灰愛 | /ie/ 艾也 | /ue/ 危爲會 | |
/ɔ/ 豪交兆 | /iɔ/ 肴宵蕭 | ||
/ɤ/ 浮豆貿 | /iɤ/ 尤幽流 | ||
/u//ou/ 歌果戈 | |||
陽聲韻 | |||
/ɛ̃/ 山刪咸 | /iɛ̃/ 念眼廿 | /uɛ̃/ 桓彎關 | |
/ẽ/ 寒南扇 | |||
/ɪ̃/ 仙先添 | |||
/ø̃/ 滿盤團 | /uø̃/ 碗管寬 | /yø̃/ 元卷涓 | |
/əɲ/ 臻曾深 | /ɪɲ/ 欣影靜 | /uəɲ/ 倫魂文 | /yɪɲ/ 君 |
/aŋ/ 庚耕生 | /iaŋ/ 陽良牆 | /uaŋ/ 橫梗晃 | |
/ɔŋ/ 江巷唐 | /iɔŋ/ 降 | /uɔŋ/ 光王黃 | |
/uŋ/ 東冬鐘 | /yuŋ/ 君窮熊 | ||
入声韵 | |||
/ɐʔ/ 瞎麥陌 | /iɐʔ/ 药若嚼 | /uɐʔ/ 滑霍刮 | |
/ɪʔ/ 一席雪 | |||
/eʔ/ 術末沒 | /ueʔ/ 活括骨 | /yeʔ/ 月 | |
/ɔʔ/ 屋八各 | /uɔʔ/ 郭擴沃 | /yɔʔ/ 菊肉月 | |
單字韻 | |||
/əɻ/ 兒耳而 | /n̙/ 嗯唔芋 | /ŋ̍/ 五魚兒 | /m̙/ 嘸毋姆 |
平 | 上 | 去 | 入 | |
---|---|---|---|---|
陰 | 324 | 435 | 52/44 | 5 |
陽 | 231 | 陽去 | 113 | 23/2 |
我回到寝室,很出乎自己意料,哭得比以往都要伤心。
毕竟我爹走的时候,我并没有流露出弱态。
终究还是太突然的缘故吧。
阿太以往身子骨健硕,使我没有过多的防备。
突如其来的噩耗,轻易的击穿了我的底线。
对阿太的关注,还是太少了。
逝者已矣。
今晨,半醒半睡中,梦到了我爹。
没有感到些许惊讶。
他的左眼眶是空的,似是被人刮去。
我问他我妈呢。
他只是流了几滴泪,说句,“她死了”。