最大のサブ行列(貪欲)

私は欲張り書いたが、

しかし、どのように貪欲な感じの質問

貪欲ことができない感じます

私は長い時間のために拷問を受けた後

私は誰かの他の人のブログにから来ました

に触発さ

同様のカットおよび補体ジオメトリ

そして、行列の行を数え

そして、貧しい人々のための比較

行列を描きます

算出した重み行列を比較する前に

ゼロよりも大きい場合を確認するには、ゼロより大きく丸めゼロ未満を追加します

次に列挙

同じテーマのこの質問のその後の心

書式#include <iostreamの> 
の#include <cstdioを>
 使用して 名前空間はstdを、
INT N [ 105 ] [ 105 ]。
int型 MAXN = - 1E3;
int型のmain()
{ 
    int型、nは 
    cinを >> N;
    以下のためにINT iが= 1 ; I <= N; I ++ のためのINT J = 1 ; J <= nであり、j ++ 
            { 
                CIN >> N [I] [J]。
                N [I] [J] + = N [I- 1  ] [J]。
            }
    ためINT iは= 1 ; I <= N; I ++ のためのINT J = I; J <= nであり、j ++ 
            { 
                    int型 ANS = 0 int型、L = 1、L <= N; L ++ 
                        { 
                            ANS = N [J] [L] -N- [I- 1 ] [L] + MAX(0 、ANS)。
                            MAXN = MAX(ANS、MAXN)。
                        } 
            } 
    COUT << MAXN。
}

必ず詳細を必ず覚えておいてくださいしてください -

初期値はゼロにすることはできませんMAXN、ゼロにすることはできません、それはゼロにすることはできません

(このため、あまりにもせずに数回)

 

おすすめ

転載: www.cnblogs.com/-Iris-/p/12319588.html