原创 【題解】Codeforces 471D. MUH and Cube Walls 差分KMP

給定兩個整數序列A,B(2e5)A,B(2e5)A,B(2e5),求BBB的差分序列在AAA的差分序列中的出現次數. 首先如果BBB的長度是111,答案就是AAA的長度。 否則做差分,然後整數KMP. 題目一點不難,但是寫了幾次

原创 Go 生成並調試核心轉儲文件

Go 生成並調試核心轉儲文件 前言 注意:我的 wsl 生成不了 core 文件,但是在獨立的 ubuntu 系統上可以 測試代碼 panic.go package main import "fmt" func main() {

原创 【筆記】WSL Ubuntu 安裝手記

Windows 子系統 Ubuntu 安裝手記 前言 之前安裝了雙系統,見 windows10+ubuntu 雙系統安裝手記, ubuntu更改手記。 用了一段時間之後,發現純 ubuntu 並不如想象中的那麼美好,有很多東西都得

原创 【筆記】vim 學習筆記

vim 學習筆記 前言 一個基本的能力,學會備用。 參考鏈接:Linux vi/vim | 菜鳥教程,個人認爲寫的很好,循序漸進。 基本模式介紹 vim 分爲三種模式:命令模式 command,輸入模式 insert,以及底線模式

原创 【筆記】github 開發流程

前言 不斷試用出一個比較方便的流程,總結在此。以後可能會再更新。 歡迎指正錯誤或者提出更好的方法,互相學習。 本地 git 圖形化工具:sublime-merge。也推薦 github-desktop,不過不支持 linux. 設

原创 【題解】12個硬幣,有一個假幣,3次稱量將其找到並說明是重還是輕

背景 某個最強王者之前問我的一道題目,爲了防止圖丟失,將其傳到博客上。 題目 12個硬幣,有一個假幣(不知比正常輕還是重),3次稱量將其找到並說明是重還是輕。 思路 本質是利用信息熵去解決,題目的信息熵是12*2=24,3次稱量可

原创 【筆記】智能指針

參考自《effective morden c++》 裸指針的缺點 無法知道指向的是單個對象還是一個數組. 無法知道使用完之後是否需要析構,即是否擁有指向的對象. 無法知道應當如何析構(使用 delete 還是專門的函數) 無法知

原创 【筆記】《TiDB 源碼閱讀系列》6 Select 語句概覽

快速筆記 語句及處理 建表: CREATE TABLE t { id VARCHAR(31), name VARCHAR(50), age int, key id_idx (id) }; select :

原创 【題解】LeetCode 4 尋找兩個有序數組的中位數

使用 go 語言,算法解釋寫在註釋中。 神奇的是,O(logn)O(logn)O(logn) 的做法跑的要比 O(log2n)O(log^2n)O(log2n) 的做法慢,可能是遞歸的問題。 題面 給定兩個大小爲 m 和 n 的有

原创 【筆記】A Tour of Go - 語言特性整理篇

前言 Go語言之旅是官方出品的非常好的學習手冊。 這篇文章將總結其中提到的Go語言特性,方便日後查詢。 所有的練習總結在了另一篇文章中. 自由總結 語句無需以分號結尾,但分號可以用來替代換行符。 左大括號{不能獨佔一行。 包、

原创 【筆記】《TiDB 源碼閱讀系列》1-3 SQL 框架

前言 跟着這一系列文章,好好了解一下TiDB。 鏈接:TiDB 源碼閱讀系列文章 (一)序 學習一種系統最好的方法是閱讀一些經典著作並研究一個開源項目,數據庫也不例外。 三篇前置文章: 說存儲,TiKV 簡介 講計算,TiDB

原创 【題解】Codeforces1073G Yet Another LCP Problem 後綴數組+單調棧

給定n,q(2e5)n,q(2e5)n,q(2e5),和一個長爲 nnn 的字符串 sss。qqq次詢問,每次給定兩個數組ai,bia_i,b_iai​,bi​。 對於每次詢問,輸出ΣΣlcp(ai,bi)\Sigma\Sigma

原创 【筆記】A Tour of Go - 練習篇

本文總結了 Go Tour 中各個練習的實現,語言特性總結於另一篇文章中。 練習:循環與函數 爲了練習函數與循環,我們來實現一個平方根函數:用牛頓法實現平方根函數。 計算機通常使用循環來計算 x 的平方根。從某個猜測的值 z 開始

原创 【題解】CCPC-Final 2019 C. Mr. Panda and Typewriter 後綴自動機+啓發式合併,DP

鏈接:GYM 102431C 給定長爲n(5000)n(5000)n(5000)、字符集1e91e91e9的字符串,給定x,y,z(1e9)x,y,z(1e9)x,y,z(1e9),問最少花多少時間能夠打字打出這個字符串。關於打字

原创 【筆記】C++ 多線程讀入數據

差的好多,抓緊學了。 參考鏈接: https://blog.csdn.net/nirendao/article/details/88096195 std::istream::seekg std::chrono::steady_cl