原创 Educational Codeforces Round 51 Div. 2

前四題比較水,E題寫出來有BUG最後沒時間調試了,賽後才AC。 A. Vasya And Password 題意 多組輸入,有一個字符串,修改儘可能少的字符使得字符串中包含大寫字母,小寫字母和數字,保證存在修改後滿足要求的字符串。 思

原创 Codeforces Round #511 Div. 2

C題水題沒做出來,反而猜對了D題,還好排名變化不大。 A. Little C Loves 3 I 題意 給出一個數nnn,要求取三個不爲333倍數的數a,b,ca, b, ca,b,c,滿足a+b+c=na+b+c=na+b+c=n。

原创 Codeforces Round #510 Div. 2

最近一直在Codeforces打比賽,總體感覺Codeforces的題目比LeetCode的質量更高。我現在是大概能做3—4題的水平,只記錄我已經AC的題。 A. Benches 題意 有一個數組,將一個數任意分配加給數組中的數,求數

原创 單週期CPU仿真

之前的幾周我們做了單週期CPU仿真的實驗,雖然一開始做得一臉懵逼,但最後還是成功實現了一個簡單的CPU。 單週期CPU原理 單週期CPU指的是一條指令的執行在一個時鐘週期內完成,無論是哪種指令。處理指令有以下五個步驟: 1. 取指令:從

原创 數據庫:關係代數

目錄 數據庫實例 關係代數 選擇與投影 集合操作 連接 除 參考資料 有了數據庫,還要通過查詢來獲得數據。SQL是常用的查詢語言,但我想用更抽象的查詢語言來表達,從思路上去理解而忽略實現細節。下面將介紹關係代數。 數據

原创 模板:連續整數因數求和

連續整數因數求和 功能 設f(x)f(x) 爲xx 所有因數的和。輸入正整數nn ,輸出∑ni=1f(i)∑i=1nf(i) 。 思路 對於任意整數tt ,每連續tt 個數的因數中有且僅有一個爲tt ,因此從11 到nn 的所有因數中共有

原创 模板:矩陣快速冪

矩陣快速冪 功能 快速計算矩陣AA 的bb 次方冪 思路 將快速冪算法中的乘法運算替換爲矩陣乘法。若將bb 表示爲∑pi×2i∑pi×2i ,則AbAb 可以表示爲∏(A2i)pi∏(A2i)pi ,其中pipi 表示bb 的二進制從右往

原创 模板:最大公約數

更新 調用GCD函數無需保證a > b,因爲當a < b時,GCD(a, b)返回GCD(b, a % b)即GCD(b, a)。 擴展 輸出分數p/q時,考慮0、負數和整數的特殊情況。 模板 #include "GCD.h" /**

原创 實訓:Vim編輯器

實訓第一週要求學習使用Vim,參考vimtutor作了一些總結。(在linux系統輸入命令vimtutor可以打開使用Vim的入門教程vimtutor) Vim 在終端中輸入vi進入Vim編輯器。 模式 Vim有三種常用模式,分別爲普通模

原创 模板:線性篩質數

線性篩質數 功能 輸出從00 到10000001000000 的所有質數。 思路 首先00 和11 不是質數,從22 開始逐個判斷是否爲質數。如果tt 爲質數,那麼對於任意正整數kk ,k×tk×t 不是質數,因此可以將k×tk×t 篩去

原创 模板:快速輸入輸出

快速輸入輸出 功能 對於大量數據進行快速輸入輸出。 思路 利用getchar()代替scanf()輸入整數,利用putchar()代替printf()輸出整數。 模板 非負整數輸入 /** * @param x: the input

原创 模板:大數加法

對於無法用int類型甚至long long int類型表示的大整數,可以用數組來存儲,那麼大數的運算就需要手動實現。 大數加法 功能 輸入兩個大數a和b,輸出a+b。 思路 從低位到高位逐位相加,並記錄進位,若最高位有進位,則位數加1。必

原创 實訓:Junit

Junit Junit是一個java語言的單元測試框架。下面以HelloWorld類爲例總結Junit的使用。 首先需要下載Junit的jar包,然後編譯HelloWorld類和HelloWorldTest類,最後執行測試命令。 He

原创 2018年數學建模校賽

最近每個週末都有好多作業,上週趁有空就參加了數學建模校賽,就用今年“深圳杯”數學建模挑戰賽作題目。連續打了兩天,最後已經沒有時間做結果分析了,寫的論文也不算理想,不過我覺得模型做得還不錯,所以想記錄一下。 我們選了B題——無線回傳拓撲規劃

原创 多週期CPU仿真

經過單週期CPU的洗禮,我們接下來要做的就是多週期CPU了。因爲有很多單週期的代碼可以複用,所以多週期寫起來沒有那麼困難。 多週期CPU原理 多週期CPU就是指一條指令在多個時鐘週期內完成,本身並不涉及多級流水線的設計,所以執行指令的性能