ZJOI2007 棋盤製作

2022-06-20 20:12:12 字數 824 閱讀 3553

即計算出乙個圖形中最大矩形面積的dp方法

**如下,很好懂

up[i][j]是指的高

#include#define maxn 2001

using namespace std;

int res[maxn][maxn],left[maxn][maxn],right[maxn][maxn],up[maxn][maxn];

int n,m,ans1,ans2;

int main()

for(ri i=1;i<=n;i++)

for(ri j=2;j<=m;j++)

if(res[i][j]!=res[i][j-1])

left[i][j]=left[i][j-1];//預處理左邊界

for(ri i=1;i<=n;i++)

for(ri j=m-1;j>0;j--)

if(res[i][j]!=res[i][j+1])

right[i][j]=right[i][j+1];//預處理右邊界

for(ri i=1;i<=n;i++)

for(ri j=1;j<=m;j++)

int a=right[i][j]-left[i][j]+1; //橫向長度

int b=min(a,up[i][j]);//豎向長度

//printf("a:%d b:%d\n",a,b);

ans1=max(ans1,b*b);//正方形

ans2=max(ans2,a*up[i][j]);//長方形

}printf("%d\n%d",ans1,ans2);

}

ZJOI2007 棋盤製作

題目描述 西洋棋是世界上最古老的博弈遊戲之一,和中國的圍棋 象棋以及日本的將棋同享盛名。據說西洋棋起源於易經的思想,棋盤是乙個8 8大小的黑白相間的方陣,對應八八六十四卦,黑白對應陰陽。而我們的主人公小q,正是西洋棋的狂熱愛好者。作為乙個頂尖高手,他已不滿足於普通的棋盤與規則,於是他跟他的好朋友小w...

ZJOI2007 棋盤製作

十二年前的zjoi我現在還切不過我是不是可以退役了 傳送門 西洋棋是世界上最古老的博弈遊戲之一,和中國的圍棋 象棋以及日本的將棋同享盛名。據說西洋棋起源於易經的思想,棋盤是乙個8 times 88 8大小的黑白相間的方陣,對應八八六十四卦,黑白對應陰陽。而我們的主人公小q,正是西洋棋的狂熱愛好者。作...

棋盤製作 ZJOI2007

題目傳送門 西洋棋是世界上最古老的博弈遊戲之一,和中國的圍棋 象棋以及日本的將棋同享盛名。據說西洋棋起源於易經的思想,棋盤是乙個8 8大小的黑白相間的方陣,對應八八六十四卦,黑白對應陰陽。而我們的主人公小q,正是西洋棋的狂熱愛好者。作為乙個頂尖高手,他已不滿足於普通的棋盤與規則,於是他跟他的好朋友小...