1. 程式人生 > >寒假訓練的小總結

寒假訓練的小總結

在過完年的時候在HUST的vjudge上開了幾份小型的訓練專題

可以再Contest裡面搜尋"BUAA"進入,現在把這些訓練在這裡小小的總結一下。

作為最初的一套,選擇的是我剛接觸Codeforces時還在打Div2,有些坑著沒有看也沒有做的D,E題。

等到反過頭看看這些題感覺上似乎比當時剛接觸的時候好了不少,能力相比那時的確有了很大的提高嗯嗯……

A是分情況討論,因式分解後發現Z在什麼情況下滿足條件,和梅森數相關。

B縮點後的LCA,很經典的題型了。

C坑爹題

D是一種分配問題,用費用流解決

E非常有趣的BFS搜尋題,和貪食蛇相關

F也是非常有趣的題目,我是用了離線後啟發式合併平衡樹來處理詢問,的確做的有點麻煩。

這一份題目都是和資料結構相關的,但不是那麼直接,這一彈一共四道題我覺得都非常棒

A:一個2*C的格子,可以開啟或關閉格子之間的門,詢問某兩格是否連通。

非常有趣的題,利用線段樹來維護一段區間的連通性,其中包括3類共8種:

從左上走到右上,從左上走到右下,從左下走到右上,從左下走到右下……

左和右中間的兩個門是否開啟……

從左上走到左下,從右上走到右下……

線段樹自底向上的維護的過程重要的就是對邏輯的處理,總體上這題非常好。

B:The K-th number的……變種?

感覺似乎離散化之後求Kth和Rank都能用BIT來維護

而區間K-th的長度<=100,感覺暴力就可以了。

當然這應該只是最方便的方法啦。。

C:

對於比較小的詢問X可以打個X*X的大表來維護。

而大的詢問都是週期性的一個一個區間的詢問,所以對於大詢問可以用線段樹來一段一段求modX的最小值。

X的分界線當然要儘可能的往大開

D:

一個序列,支援修改一個位置的數,查詢一段區間有多少個不同的數字。

首先用L[x]代表x位置的數左邊離它最近且相等的位置。

這個修改的話也可以很輕鬆的通過set來維護新的L[x]

詢問就相當於詢問一個區間有多少個數小於某個值。

就可以用樹套樹/BIT套可持久化線段樹來做了

很費解的是wcb寫的是暴力來詢問L[],居然也AC了,而且跑的比我的BIT套可持久化線段樹都快_(:3」∠)_...

第三彈:

(坑,慢慢更新)

相關推薦

寒假訓練總結

在過完年的時候在HUST的vjudge上開了幾份小型的訓練專題 可以再Contest裡面搜尋"BUAA"進入,現在把這些訓練在這裡小小的總結一下。 作為最初的一套,選擇的是我剛接觸Codeforces時還在打Div2,有些坑著沒有看也沒有做的D,E題。 等到反過頭看看這

2018寒假訓練總結

前言 1月24期末考完,26號就是GDKOI, 賽前,幾乎沒有什麼準備,成績也不理想, 比完賽回來,便開始了寒假的集訓。 訓練日常 早上7點多起來,吃個早餐,便到機房訓練。 早餐不是成伯伯就是翠影,偶爾才去一下飯堂。 上午的時間用來做比賽,一般到1

antd + node.js + mongoose總結

node push cse define oos 新博客 mongoose exe ant 最近開發太忙,都沒時間更新博客,想通過這篇博客總結一下相關經驗,以備後續能用到: 一、antd 1.onChange of undefined問題:可能是頁面中表單取了相同的名稱,也

salesforce零基礎學習(七十二)項目中的零碎知識點總結(一)

gin 不同 grant dmi ima -m ron 角色 com 項目終於告一段落,雖然比較苦逼,不過也學到了好多知識,總結一下,以後當作參考。 一.visualforce標簽中使用html相關的屬性使用 曾經看文檔沒有看得仔細,導致開發的時候走了一些彎路。還好得到

SQL知識總結

有用 ati pen -c ble htm png https sub 1、ph師傅一個小竅門 MYSQL字符編碼 當web應用,不允許登陸admin,或者過濾其它關鍵字的時候,可以使用阿拉伯數字%c2進行繞過 user=Q1t0ngW3i%c2&pass=ab@

分治算法總結 x

include tdi 絕對值 spa none 限制 clas string 給定 分治算法的基本思想是將一個規模為 N 的問題分解為 K 個規模較小的子問題,這些子問題相互獨立且與原問題性質相同。求出子問題的解,就可得到原問題的解。         

c++的const總結(2)

通過 con 其他 綁定 strong col 指針和引用 兩個 tle c++的const小總結(1) http://www.cnblogs.com/MyNameIsPc/p/7091631.html 頂層const和底層cnost 先憑經驗區分一下兩者的區別?

做一個總結吧,把別人的經驗拿來總結一下

spa range 簡單的 pan att 切片 XML append filter 構造一個1, 3, 5, 7, ..., 99的列表,可以通過循環實現: 取list的前一半的元素,也可以通過循環實現: 1. L = [] n = 1 while n <= 9

oracle數據庫總結

-- 時間 st3 not null 表名 ref 字符類型 系統 mod ---數據庫小總結--- 1.數據庫的基本常用數據類型 ①varchar2(size)          //浮動長度字符類型:長度會改變,根據用戶輸入的值進行相應的長度改變,節省內存空間

在jetson tx1下編譯安裝opencv3.2的一點總結

detail nvidia 詳細 aar 攝像頭 dev linu title 我們 公司買了個NVIDIA的板子,我在裝opencv3.2的時候成功把系統搞崩了,當然我也不是故意的。 於是乎重頭開始裝了Ubuntu系統,建議弄個vpn,我在網上看到很多博主說網速慢得扣,呵

Hibernate 之主鍵生成策略總結

rem 時間值 多線程 class 判斷 acl 選擇 hiberna bsp 主鍵生成策略大致分兩種: 手工控制策略 自動生成策略【框架自動生成和數據庫自動生成】 手工控制策略: assigned:類型是任意的,需要在 save() 到數據庫前,編碼人員手工設置主鍵

第一本的java 的總結

++ 之前 調用方法 continue 在那 局部變量 出現 buffer public 1.Java常見的註釋有哪些,語法是怎樣的? 1)單行註釋用//表示,編譯器看到//會忽略該行//後的所文本 2)多行註釋/* */表示,編譯器看到/*時會搜索接下來的*/,忽略掉

DJango總結

ror mon man reverse del choices orm blank 避免 views.py def func(request): # 包含所有的請求數據

17年項目工作知識點總結------彭記(022)

oca sna 繼承 代碼 java ima 對象 掌握 完全 時間永遠是過的最快的,對於現在的我來說,忙碌的工作中不斷的學習,不斷的成長,已經正能量滿滿。17年已過大半,對這段時間的工作和項目知識點做一個小結,重新整理一下小知識點。總結分一下幾大塊:HTML5:1、新特

SPFA總結

沒有 gen 插入 稀疏圖 最大流 center 考試題 堆優化 由於 關於spfa 知識點 原始版 ---裸 應用: 一、判負環 兩種方法 1.跑單源點,如果某一個點入隊了n-1次,存在 2.對於每個點spfa,如果此源點反被其他點更新,存

瀏覽器css的兼容問題總結------彭記(025)

重要 innertext bar white img ref 繼續 ros 輸入 1. cursor:hand VS cursor:pointer firefox不支持hand,但ie支持pointer 解決方法: 統一使用pointer 2.

shell腳本高級進階總結

shell腳本 經過一周腳本的折磨,覺得還是有一定的收獲,所以就把一些不容易理解的並且容易忘記的難點做一個總結。shell腳本中主要有兩大模塊,第一就是流程控制的腳本,第二就是函數控制的腳本。▲首先,流程控制包括順序執行,選擇執行,循環執行。主要的條件語句就是if。那就來先說說if語句吧!1.if語句分為單

總結

查詢 容易 也好 新的 方言 開發 快速開發 情況 動手 之前定小目標時是8.29,現在是9.19,已經過了20天了,之前想要的東西也基本上收集好了。 之前定下要學習的有{1.Linq,2.擴展方法,3.反射,4.Xml讀寫,5.用到了再學正則、網抓等技術} 我知道我要學習

「mysql優化專題」單表查詢優化的一些總結,非索引設計(3)

flush src innodb atp show 優化 ase 驗證 where子句 單表查詢優化:(關於索引,後面再開單章講解) (0)可以先使用 EXPLAIN 關鍵字可以讓你知道MySQL是如何處理你的SQL語句的。這可以幫我們分析是查詢語句或是表結構的性能瓶頸。

html5總結

發生 著圖 不足 時間 解決 代碼 重構 打開 頁面 1.背景圖片和插入圖片的區別:   1>.在網頁中如果插入了一張圖片後,容器會隨著圖片的大小發生變化;如果插入一張背景圖片容器不會隨著圖片的大小而變化。   2>.插入圖片如果太小不會對網頁的容器帶來任何影響