洛谷 - P1160 - 隊列安排
https://www.luogu.org/problemnew/show/P1160
首先想到就是暴力模擬,用雙端隊列模擬插入,但是刪除就很麻煩,肯定會超時的。
可以考慮標記每次插入同學的“相對坐標”,得出一個從左往右逐個刪除的順序。誤!2.直接用set查詢是不是要刪除就可以了。
這樣還要預防沒東西刪除的情況,所以還要記錄待刪除的人在不在?誤!1.直接對刪除指令unique一次就可以了。
所以最終的復雜度當然是nlogn的。
但是這個怎麽會是隊列呢?明明要用鏈表的吧?洛谷的標簽蠻有毒的。
看了一下別人的思路,原來還有用數組建立鏈表,然後刪除的時候復雜度就是O(1)的,比我少了一個log呢。???3.我為什麽要用set記錄哪些要刪除?直接刪了不好嗎?我可能要去睡覺了。
這個線性數據結構的專題還沒做完呢。為了開一波後面的高級數據結構先莽一波。
洛谷 - P1160 - 隊列安排
相關推薦
洛谷P1160 隊列安排 鏈表
sin clas while bre style pre nbsp math i++ 洛谷P1160 隊列安排 鏈表 1 #include <cstdio> 2 #include <cstring> 3 #include <c
洛谷-P1160 隊列安排
sam span 題解 blog 方式 sample ble color bsp 題目 Problem Description 一個學校裏老師要將班上N個同學排成一列,同學被編號為1~N,他采取如下的方法: 1.先將1號同學安排進隊列,這時隊列中只有他一個人; 2.2~
洛谷 P1160 隊列安排
UNC region -s %20 隊列 std bool 所有 include 題目描述 一個學校裏老師要將班上 NNN 個同學排成一列,同學被編號為 $1~N$ ,他采取如下的方法: 先將 111 號同學安排進隊列,這時隊列中只有他一個人; 2?N2-N2?N
洛谷 - P1160 - 隊列安排
高級 雙端隊列 別人 線性 同學 睡覺 記錄 安排 隊列 https://www.luogu.org/problemnew/show/P1160 首先想到就是暴力模擬,用雙端隊列模擬插入,但是刪除就很麻煩,肯定會超時的。 可以考慮標記每次插入同學的“相對坐標”,得出一個從左
洛谷P1160——佇列安排【連結串列,模擬】
一個學校里老師要將班上NN個同學排成一列,同學被編號為$1~N$,他採取如下的方法: 先將11號同學安排進佇列,這時佇列中只有他一個人; 2-N2−N號同學依次入列,編號為i的同學入列方式為:老師指定編號為i的同學站在編號為1-(i -1)1−(i−1)中某位同學(即之前已經入
P2837 晚餐隊列安排
是個 混亂 ret name 一個 cstring 號碼 ++ 說明 題目背景 Usaco Feb08 Bronze 題目描述 為了避免餐廳過分擁擠,FJ要求奶牛們分2批就餐。每天晚飯前,奶牛們都會在餐廳前排隊入內,按FJ的設想,所有第2批就餐的奶牛排在隊尾,隊伍的前
晚餐隊列安排
不同 printf %d spa tdi ace mes pan post 題目 有兩種不同的狀態,每種狀態的轉移也不同。 很適合練dp 做dp是要根據狀態的類型,設計不同的數組 很好的題 #include<iostream> #include<cstdi
【題解】晚餐隊列安排
for 個數 當前 clu == 完全 是個 每天 輸入 題目描述 為了避免餐廳過分擁擠,FJ要求奶牛們分2批就餐。每天晚飯前,奶牛們都會在餐廳前排隊入內,按FJ的設想,所有第2批就餐的奶牛排在隊尾,隊伍的前半部分則由設定為第1批就餐的奶牛占據。由於奶牛們
洛谷 P1091合唱隊列
吾王劍之所指,吾等心之所向 ——《Fate/stay night》 題目:https://www.luogu.org/pro
洛谷P2365/5785 任務安排 題解 斜率優化DP
任務安排1(小資料):[https://www.luogu.com.cn/problem/P2365](https://www.luogu.com.cn/problem/P2365) 任務安排2(大資料):[https://www.luogu.com.cn/problem/P5785](https://www
洛谷 P2837 晚餐隊列的安排
混亂 是個 using 理解 由於 urn 輸入格式 簡單 得到 為了避免餐廳過分擁擠,FJ要求奶牛們分2批就餐。每天晚飯前,奶牛們都會在餐廳前排隊入內,按FJ的設想,所有第2批就餐的奶牛排在隊尾,隊伍的前半部分則由設定為第1批就餐的奶牛占據。由於奶牛們不理解FJ的安排,晚
洛谷 P2216 [HAOI2007]理想的正方形 || 二維RMQ的單調隊列
pmi 最小值 typedef 關系 pan 算法 一行 ++ min 題目 這個題的算法核心就是求出以i,j為左上角,邊長為n的矩陣中最小值和最大值。最小和最大值的求法類似。 單調隊列做法: 以最小值為例: q1[i][j]表示第i行上,從j列開始的n列的最小值。
洛谷P3195 [HNOI2008]玩具裝箱TOY(單調隊列優化DP)
span reg inf line 希望 決定 ifd 詳細 pac 題目描述 P教授要去看奧運,但是他舍不下他的玩具,於是他決定把所有的玩具運到北京。他使用自己的壓縮器進行壓縮,其可以將任意物品變成一堆,再放到一種特殊的一維容器中。P教授有編號為1...N的N件玩具,第
洛谷.2219.[HAOI2007]修築綠化帶(單調隊列)
註意 右下角 etc href 端點 span http body stdin 題目鏈接 洛谷 COGS.24 對於大的矩陣可以枚舉;對於小的矩陣,需要在滿足條件的區域求一個矩形和的最小值 預處理S2[i][j]表示以(i,j)為右下角的C\(*\)D的矩陣和, 然後對於求
洛谷 P2827 蚯蚓 【優先隊列】
個數 badge 空格 之間 new lan fine floor 結果 洛谷 P2827 蚯蚓 題目描述(題目還是到鏈接裏去看吧(點標題),這裏復制的時候有點問題) 本題中,我們將用符號 \lfloor c \rfloor?c? 表示對 cc 向下取整,例如: \lflo
洛谷 P1886 滑動窗口 單調隊列
clas 一個 head sam -- c++ 解釋 href 最大值 題目描述 現在有一堆數字共N個數字(N<=10^6),以及一個大小為k的窗口。現在這個從左邊開始向右滑動,每次滑動一個單位,求出每次滑動後窗口中的最大值和最小值。 例如: The array is
洛谷 P2952 [USACO09OPEN] 牛線 Cow Line 雙向隊列deque
push_back The gre operation 我們 ret whether quest indicate 題目描述 Farmer John‘s N cows (conveniently numbered 1..N) are forming a line. The
洛谷P2900 [USACO08MAR]土地征用Land Acquisition(動態規劃,斜率優化,決策單調性,線性規劃,單調隊列)
tps include 寫法 lan clas com mat 成了 dong 用兩種不一樣的思路立體地理解斜率優化,你值得擁有。 題意分析 既然所有的土地都要買,那麽我們可以考慮到,如果一塊土地的寬和高(其實是蒟蒻把長方形立在了平面上)都比另一塊要小,那麽肯定是直接並購,
洛谷 P2048 [NOI2010]超級鋼琴(優先隊列,RMQ)
div pen tps algorithm oid amp code def tar 傳送門 我們定義$(p,l,r)=max\{sum[t]-sum[p-1],p+l-1\leq t\leq p+r-1 \}$ 那麽因為對每一個$p$來說$sum[p-1]$是一
洛谷P2254 [NOI2005]瑰麗華爾茲(單調隊列)
include -- pan har pri 轉移 moto scanf 距離 傳送門 題解 大概就是設$dp[i][x][y]$表示在第$i$個時間段,在$(x,y)$時的最大滑動距離 然後轉移是$dp[i][x][y]=max(dp[i-1][x][y],d