演算法訓練 暗戀

2021-07-26 05:06:41 字數 1223 閱讀 6193

演算法訓練 暗戀  

時間限制:1.0s   記憶體限制:256.0mb

問題描述

同在乙個高中,他卻不敢去找她,雖然在別人看來,那是再簡單不過的事。暗戀,是他唯一能做的事。他只能在每天課間操的時候,望望她的位置,看看她傾心的動作,就夠了。操場上的彩磚啊,你們的位置,就是他們能夠站立的地方,他倆的關係就像磚與磚之間一樣固定,無法動搖。還記得當初鋪磚的工人,將整個操場按正方形鋪磚(整個操場可視為r行c列的矩陣,矩陣的每個元素為一塊正方形磚塊),正方形磚塊有兩種,一種為藍色,另一種為紅色。我們定義他和她之間的「愛情指標」為最大純色正方形的面積,請你寫乙個程式求出「愛情指標」。

輸入格式

第一行兩個正整數r和c。

接下來r行c列描述整個操場,紅色磚塊用1來表示,藍色磚塊用0來表示。

輸出格式

乙個數,表示他和她之間的「愛情指標」。

樣例輸入

5 80 0 0 1 1 1 0 1

1 1 0 1 1 1 1 1

0 1 1 1 1 1 0 1

1 0 1 1 1 1 1 0

1 1 1 0 1 1 0 1

樣例輸出 9

資料規模和約定

40%的資料r,c<=10;

70%的資料r,c<=50;

100%的資料r,c<=200;

思路分析:題目說了很多...其實就是要讓你求矩陣中最大的全是0或1的正方形。

我第一次想到的方法是搜尋,用bfs搜尋一遍,找到最大的正方形。但寫了半天沒寫出來...還是不熟練啊...(bfs肯定是可以做的,下去我再寫乙個出來)

方法二和搜尋的思維量都差不多,但**實現起來就容易些了。

#include #define max 200 + 10

using namespace std;

int mgraph[max][max];

int n, m;

bool judge( int x, int y, int cur )

}return true;

}int main()

}int maxwidth = 0;

int curmax = 1;

for( int i = 0; i < n; i++ )

else break;}}

}printf( "%d\n", maxwidth * maxwidth );

return 0;

}

演算法訓練 暗戀

演算法訓練 暗戀 時間限制 1.0s 記憶體限制 256.0mb 錦囊1 錦囊2 錦囊3 問題描述 同在乙個高中,他卻不敢去找她,雖然在別人看來,那是再簡單不過的事。暗戀,是他唯一能做的事。他只能在每天課間操的時候,望望她的位置,看看她傾心的動作,就夠了。操場上的彩磚啊,你們的位置,就是他們能夠站立...

演算法訓練 暗戀

問題描述 同在乙個高中,他卻不敢去找她,雖然在別人看來,那是再簡單不過的事。暗戀,是他唯一能做的事。他只能在每天課間操的時候,望望她的位置,看看她傾心的動作,就夠了。操場上的彩磚啊,你們的位置,就是他們能夠站立的地方,他倆的關係就像磚與磚之間一樣固定,無法動搖。還記得當初鋪磚的工人,將整個操場按正方...

藍橋杯 ALGO 112 演算法訓練 暗戀

演算法訓練 暗戀 時間限制 1.0s 記憶體限制 256.0mb 問題描述 同在乙個高中,他卻不敢去找她,雖然在別人看來,那是再簡單不過的事。暗戀,是他唯一能做的事。他只能在每天課間操的時候,望望她的位置,看看她傾心的動作,就夠了。操場上的彩磚啊,你們的位置,就是他們能夠站立的地方,他倆的關係就像磚...