搜尋專題訓練hdu2510符號三角形

2021-07-29 22:28:00 字數 1047 閱讀 9904

符號三角形的 第1行有n個由「+」和」-「組成的符號 ,以後每行符號比上行少1個,2個同號下面是」+「,2個異 號下面是」-「 。計算有多少個不同的符號三角形,使其所含」+「 和」-「 的個數相同 。 n=7時的1個符號三角形如下: 

+ + - + - + + 

+ - - - - + 

- + + + - 

- + + - 

- + - 

- - 

+ input

每行1個正整數n <=24,n=0退出. 

output

n和符號三角形的個數. 

sample input

15

1619

200

sample output

15 1896

16 5160

19 32757

20 59984

題目n的範圍是24,資料範圍較小,打表思路。

打表過程主要是針對所有情況的搜尋,考驗**能力。

由於每乙個n都可以承接n-1的關係,可以從1開始從1,0兩個量中選擇,然後依次按位dfs下去,這樣保證了2^24中求情況都求得,計算過程中,把+ - 看做二進位制,通過異或即可得到以後的每一行的情況,根據1個數的統計即可得出是否正確。(注意每次遍歷以後交換取值的時候要將上一次的結果減去)

打表與ac**:

#includeusing namespace std;

int ans[30];

int sum;

int cnt[30][30];

int res= ;

int dfs(int n)

if(sum*2 == n*(n+1)/2)

ans[n]++;

dfs(n+1);

sum-=i;

for(int j = 2; j <= n; ++j)

}}int main()

*/ int n;

while(cin >> n && n != 0)

}

hdu 2510 符號三角形

題目描述 problem description 符號三角形的 第1行有n個由 和 組成的符號 以後每行符號比上行少1個,2個同號下面是 2個異 號下面是 計算有多少個不同的符號三角形,使其所含 和 的個數相同 n 7時的1個符號三角形如下 input 每行1個正整數n 24,n 0退出.outpu...

符號三角形 HDU 2510

符號三角形的 第1行有n個由 和 組成的符號 以後每行符號比上行少1個,2個同號下面是 2個異 號下面是 計算有多少個不同的符號三角形,使其所含 和 的個數相同 n 7時的1個符號三角形如下 input每行1個正整數n 24,n 0退出.outputn和符號三角形的個數.sample input15...

HDU 2510 符號三角形 暴力打表

符號三角形的 第1行有n個由 和 組成的符號 以後每行符號比上行少1個,2個同號下面是 2個異 號下面是 計算有多少個不同的符號三角形,使其所含 和 的個數相同 n 7時的1個符號三角形如下 input 每行1個正整數n 24,n 0退出.output n和符號三角形的個數.sample input...