羅区P1118 [USACO06FEB]デジタル三角形 `下位桁Su` ...

書式#include <iostreamの>
 使用して 名前空間はstdを、
const  int型 N = 1010 ;
INT Y [N] [N]。
int型のn;
int型[N]と、
ブール値ST [N]。
int型の合計。
ブールフラグ。
ボイドプリント(){
     INT iは= 1 ; I <= N; I ++ 
        COUT << [I] << "  " 
} 
ボイド DFS(INTステップ、INT ANS){
     場合(ANS>和||フラグ)のリターン;
    場合(ステップ== N + 1 && ANS == 合計){ 
        プリント()。
        フラグ = 1 リターン; 
    } 
    ためINT iは= 1 ; I <= N; I ++ ){
         場合(!ST [I]){ 
            ST [I] = 1 
            [ステップ] = I。
            DFS(ステップ + 1、ANS + I * Y [n]は[ステップ])。
            ST [I] = 0 ; 
        } 
    } 
} 
int型のmain(){ 
    CIN>> N >> 合計。
    Y [ 1 ] [ 1 ] = 1 以下のためにINT iが= 2 ; I <= N; I ++)// 杨辉三角
        ためINT J = 1 ; J <= I; J ++ 
            Y [I] [J] = Y [I- 1 ] [J- 1 ] + Y [I- 1 ] [J]。
    DFS(10 );
    リターン 0 ; 
}

 

 

おすすめ

転載: www.cnblogs.com/QingyuYYYYY/p/11914947.html