小王是d市主管經濟的副市長,由於經濟發展的需要,要在d市組建乙個高新技術開發區,經過研究,規劃局在d市的東部劃出了一塊土地作為開發區選址。這塊土地是一塊矩形平原,小王準備在上面修建一些建築。為了規劃方便,他將矩形劃分成nm格。棘手的是,這塊土地有些歷史文化遺址散布在某些格仔內,這些歷史文化遺址是萬萬不能拆除的,否則將激起民憤,小王深知這一點,因此,他的新建築在選址時要避開這些格仔。
假設新的建築物有p種規格,每種建築物都是正方形的,占地為titi格 (1<=i<=p)。小王想知道對於每種規格的建築,有多少種不同的合適選址方案(一種合適的選址方案指的是在該建築所佔的正方形區域內不存在有歷史文化遺址的格仔)。現在請你來當小王的秘書 幫他完成這個光榮而艱鉅的任務。
從檔案d.i
nd.in
d.in
讀入資料,輸入檔案第一行包含三個數,分別代表n,m
,p
n,m,p
n,m,p(
1<=n
,m
<
=2000,1
<=p
<
=1000
)(1<=n,m<=2000,1<=p<=1000)
(1<=n
,m<=2
000,
1<=p
<=1
000)
隨後的n
nn行,每行有m
mm個0
00或1
11(1
11表示該格為空地,0
00表示該格有歷史文化遺址)。接下來的p
pp行每行有乙個整數titi
ti結果輸出到檔案d.o
ut
d.out
d.ou
t中,共有p
pp行,每行乙個整數,第i
ii行的數代表邊長為titi
ti的建築物選址方案數。
442
1011
1111
1110
1110
23
5
1
這題我們可以根據樣例來處理
例如:可以根據其中每個數字代表以該格為右下角,最多可以達成邊長為多少的正方形
然後統計,每種邊長都可以由比它大的邊長的格仔達成
1011
1112
1220
1230
#include
#include
#include
#include
using
namespace std;
int n, m, p, k, max;
int a[
10001][
1001
], f[
10001][
1001
], t[
10001
], b[
10001][
1001];
char x[
10001];
intmain()
for(
int j =
1; j <= m;
++j)
for(
int i =
1; i <= n;
++i)
if(a[i]
[j]!=
0) b[i]
[j]= b[i -1]
[j]+1;
-for
(int i =
1; i <= n;
++i)
for(
int j =
1; j <= m;
++j)
if(a[i]
[j]!=0)
max =
max(n , m)
;for
(int i = max -
1; i >=1;
--i)
t[i]
+= t[i +1]
;for
(int i =
1; i <= p;
++i)
return0;
}
08年特長生第四題 DP 工作
這次故事的主角是hg!轉眼4年過去了,hg本科畢業了,於是找了份工作。每天hg會收到乙份任務清單,清單上列出了n個可能需要他完成的任務。每個任務包含3個資訊 ti ai bi,ti表示完成此任務需要的時間,ai表示此任務的到達時間,bi表示此任務的最晚完成時間。在某一時刻若hg手上沒有任務,那麼他可...
2023年東莞特長生 散步
description 李四是乙個很會利用時間的學生,他經常晚上吃過飯後一邊思考問題一邊散步,由於要思考問題,並且思考問題的內容越來越多,所以他在散步時也是越來越慢的,他自己總結出乙個規律,他散步時第一步走n厘公尺,第二步走n 1厘公尺,以後每步比前一步少1厘公尺,最後一步是0時就停下來了。現在給出...
08年東莞特長生 獎金
08年東莞特長生 獎金 time limit 1000ms memory limit 65536k total submit 326 accepted 108 description 由於無敵的凡凡在2005年世界英俊帥氣男總決選中勝出,yali company總經理mr.z心情好,決定給每位員工發...