時間複雜度(x
TOI 專用
有些題目會是數學閱讀題,不要因為題敘很長就完全不看,試著看穿他的廢話ww
前15~20分鐘看懂所有題目,紀錄每題大致的內容和已經會做的子問題。
之後在寫的時候知道「哪一些可以拿的部分分還沒拿」
(註:以下題目比初選難)
在一個下雪的數線上有\(n\)個雪球,一開始第\(i\)個雪球在座標\(x_i\)上(都在不同位置)。對於所有的整數\(i\),在\([i, i + 1)\)的區間積了一單位的雪。
之後會有\(Q\)個事件,每次事件會有數值\(W_i\)的風吹過,使得所有雪球從原本位置移動\(W_i\)格(可以是負數)。每個雪球一開始質量為\(0\),經過有積雪的地方會吸收那邊的雪並增加質量,而該處的雪會消失。
問在所有事件後每個雪球的質量是多少。
子問題一:\(n, q \leq 2000\) (33%)
子問題二:\(n, q \leq 2 \times 10^5\) (67%)
對於所有測資,\(\mid x_i \mid, \mid w_i \mid \leq 10^{12}\)
給你一張\(n\)點\(m\)邊無向連通圖,每條邊有邊權(代價),再給你\(s, t, u, v\)。你必須選擇某一條\(s\) 到\(t\)的最短路(邊權總和最小),而將那條路上的每一條邊權改成\(0\)。請輸出改完邊之後,從\(u\)到\(v\)的最小路徑代價和。
對於所有測資:
\(n \leq 10^5, m \leq 2 \times 10^5\)
邊權 \(c_i \leq 10^9\)
子問題一:\(s = u\) (18%)
子問題二:\(s\)到\(t\)的最短路唯一 (15%)
子問題三:\(n \leq 300\) (24%)
子問題四:無其他限制 (45%)
給定\(x, y\),找出有多少個正整數序列\(A\) (每一項都是正整數),使得每一項的最大公因數是\(x\)且總和為\(y\)。
對於所有測資:
\(x, y \leq 10^9\)
子問題一:\(y\)是質數(14%)
子問題二:\(x, y \leq 10^6\) (30%)
子問題三:無其他限制 (56%)
給你一個字串,每個字元是 'L', 'R',請構造出一個簡單多邊形(邊不能在非頂點的地方相交),且每條邊平行 \(x\) 軸或\(y\)軸,
使得你從多邊形的一個頂點開始逆時針走,依序遇到的第\(i\)個轉角方向和第字串第\(i\)個字元相同(往左轉->L, 右轉->R)
保證有解。
子問題一:\( \mid S \mid \leq 5000\) (50%)
子問二:\( \mid S \mid \leq 10^5\) (50%)
有\(n\)個學生和\(m\)個教授要去圖書館看一本書(現場看完),每個人有他到圖書館的時間\(t_i\)和他閱讀一本書需要的時間 \(w_i\)。每個人可以在 \( \geq t_i \)的時間開始閱讀,並且一次就要讀完 \( w_i\)。學生可以跟其他人一起看,但是教授必須全程自己看。請問所有人看完的最小時間是多少?
對於所有測資:
\(n, m \leq 3000\)
\(t_i \leq 10^7, w_i \leq 10^5\)
子問題一:\(n, m \leq 10\)(22%)
子問題二:\(n, m \leq 300\) (35%)
子問題三:無其他限制 (43%)
程式碼可讀性
變數名稱
使用函式、類別
重新讀一次題目,確定你沒有理解錯題意,並注意數字範圍、long long、取模等問題
把程式碼分成一個個部分看,檢查完一個部分之後相信他是對的,並轉移焦點(不要一直盯著同一個地方)
@全國賽燒雞
在開始寫一題之前告訴自己:我大概會寫多久
超過這個時間太多就強制跳過