BZOJ P2476:戰場的數目
好神的遞推+矩陣優化加速啊
我們不管矩形的存在
那麼我們加速目前需要x條邊的戰場
那麼我們分類討論
1.這個戰場只有右邊或左邊有一個格子,那麼我們把這個格子去掉之後,非常顯然的得到了p-2條邊的戰場
2.左邊和右邊都有,那麼我們把這兩個格子都去掉之後會發現得到了p-4條邊的戰場,但因為這種情況都包含在第一種情況中,所以減去即可
3.左邊右邊都沒有,那麼我們把最下面一層減去,會發現正好變成了p-2條邊
然後得出遞推是:f[n]=2*f[n-2]-f[n-4]+f[n-2]
然後都除以2之後
變成了:f[n]=3*f[n-1]-f[n-2]
然後矩陣優化即可
相關推薦
BZOJ P2476:戰場的數目
好神的遞推+矩陣優化加速啊 我們不管矩形的存在 那麼我們加速目前需要x條邊的戰場 那麼我們分類討論 1.這個戰場只有右邊或左邊有一個格子,那麼我們把這個格子去掉之後,非常顯然的得到了p-2條邊的戰場 2.左邊和右邊都有,那麼我們把這兩個格子都去掉之後會發現得到了p-4條邊的
BZOJ 2476 戰場的數目 矩陣乘法
題目大意:令戰場定義為可以從中間某個點向兩邊單調不增且不是一個長方形的柱子的序列,求周長為p的柱子有多少個 令f[n]為周長為2n的戰場數 不考慮【不是長方形】這個條件 如果一個戰場左右都沒有高度為1的柱子,則方案數等價於將最下方一排砍掉的方案數 即f[n-1] 如果一個戰
戰場的數目——湖南省第六屆大學生計算機程式設計競賽
戰場由若干單位正方形積木組成。積木佔據了連續的若干列,且圖形周長等於它最小包圍矩形的周長。假設戰場的圖形周長為p,一共有多少種可能的戰場? 戰場不能恰好為一個矩形。 例如,p<8時沒有符合要求的戰場,p=8時有2種戰場: p=10有9種戰場: 要求輸出方案總
湖南省第六屆大學生計算機程式設計競賽 戰場的數目
戰場的數目 在上題中,假設戰場的圖形周長為p,一共有多少種可能的戰場? 例如,p<8時沒有符合要求的戰場,p=8時有2種戰場: p=10有9種戰場: 要求輸出方案總數模987654321的值。 Input輸入檔案最多包含25組測試資料,每個資料僅包含
湖南省第六屆大學生程式競賽--戰場的數目
題目I 戰場的數目 在上題中,假設戰場的圖形周長為p,一共有多少種可能的戰場? 例如,p<8時沒有符合要求的戰場,p=8時有2種戰場: p=10有9種戰場: 要求輸出方案總數模987654321的值。 輸入 輸入檔案最多包含25組測試資料,每個資料僅包含一
bzoj - 1007
namespace ans operator using str pac bitset top 技術 1 #include <algorithm> 2 #include <cstring> 3 #include <cstdio>
BZOJ 1411 ZJOI2009 硬幣遊戲
ret dea 遊戲 true 硬幣 air 技術 i++ include 遞推; 1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 using n
8.3 確定兩個日期之間的工作日數目
one int form cas date_add ediff mat interval bsp 問題:給定兩個日期,求它們之間(包括這兩個日期本身)有多少個”工作“日。select sum(case when date_format(
BZOJ 3122 SDOI2013 隨機數生成器
color false std ros == d+ eal eof close 公式就不推了.hzwer上的很清楚. 值得註意的一點是,如果最後答案成0,需要加上mod.否則400ms wa. 1 #include<cstdio> 2 #incl
BZOJ 4827 [Hnoi2017]禮物 ——FFT
最小 sharp scan con 禮物 struct swa 1.0 -i 題目上要求一個循環卷積的最小值,直接破環成鏈然後FFT就可以了。 然後考慮計算的式子,可以分成兩個部分分開計算。 前半部分FFT,後半部分掃一遍。 #include <map> #i
BZOJ 4569 [Scoi2016]萌萌噠 ——ST表 並查集
oid include long long amp else n) div 每一個 並查集 好題。 ST表又叫做稀疏表,這裏利用了他的性質。 顯然每一個條件可以分成n個條件,顯然過不了。 然後發現有許多狀態是重復的,首先考慮線段樹,沒什麽卵用。 然後ST表,可以每一層表示對
bzoj 1787: [Ahoi2008]Meet 緊急集合
點擊 緊急 ring input ahoi2008 nbsp mage swa problems 1787: [Ahoi2008]Meet 緊急集合 Time Limit: 20 Sec Memory Limit: 162 MBSubmit: 3016 Solve
BZOJ 2288 【POJ Challenge】生日禮物(貪心+優先隊列)
ace urn ons target challenge pri 最大 font return 【題目鏈接】 http://www.lydsy.com/JudgeOnline/problem.php?id=2288 【題目大意】 給出一列數,求最多取m段
BZOJ 4884 [Lydsy2017年5月月賽]太空貓(單調DP)
return 畫面 int pac logs name 左右 ring size 【題目鏈接】 http://www.lydsy.com/JudgeOnline/problem.php?id=4884 【題目大意】 太空貓(SpaceCat)是一款畫面精
BZOJ 4883 [Lydsy2017年5月月賽]棋盤上的守衛(最小生成環套樹森林)
print 我們 size -s nbsp long pan typedef 包含 【題目鏈接】 http://www.lydsy.com/JudgeOnline/problem.php?id=4883 【題目大意】 在一個n*m的棋盤上要放置若幹個守衛
BZOJ——1602: [Usaco2008 Oct]牧場行走
com onclick {} scanf printf arch usaco2008 back sea http://www.lydsy.com/JudgeOnline/problem.php?id=1602 題目描述 N頭牛(2<=n<=1000)別人
BZOJ——1787: [Ahoi2008]Meet 緊急集合
size image mes img clas algorithm meet nss spa http://www.lydsy.com/JudgeOnline/problem.php?id=1787 題目描述 輸入 輸出 樣例輸入 6 4 1 2
Bzoj 3831: [Poi2014]Little Bird
元素 eof ont pac color can 16px set 題目 3831: [Poi2014]Little Bird 題目大意:從1開始,跳到比當前矮的不消耗體力,否則消耗一點體力,每次詢問有一個步伐限制,求每次最少耗費多少體力 f[i]表示跳到i位置消耗的最
bzoj晨跑
1+n can include name using () ons spa push #include<cstdio> #include<iostream> #include<cstring> #include<queue>
bzoj工作安排
amp for clu set -1 struct mes names stream 裸的最小費用最大流 思路是弄一個原點,弄一個會點,將原點連上物品容量為c[i], 費用為零,將物品和人按a數組的關系連起來,容量為INF,花費為零,然後將人和會點連起來容量為他 做幾件物品