下沙的沙子有幾粒

2021-08-17 23:38:45 字數 809 閱讀 2492

input 

輸入資料報含多個測試例項,每個佔一行,由兩個整數m和n組成,m和 n 分別表示字串中h和d的個數。由於我們目前所使用的微機和老美的超級計算機沒法比,所以題目給定的資料範圍是(1<=n<=m<=20)。  

output 

對於每個測試例項,請輸出下沙的沙粒到底有多少,計算規則請參考「宇春猜想」,每個例項的輸出佔一行。  

sample input 

1 1 

3 1 

sample output 

1 by talk:拿例2來說3個h,1個d,一共有hhhd,hdhh,hhdh,dhhh,四種情況,但題目要求從左到右掃瞄m大於等於n,dhhh第一次掃瞄d為1,h為0,所以不滿足捨去。

然後我是對每個情況乙個乙個列出來的...真是艱辛。找到規律a[i][j]=a[i-1][j]+a[i][j-1].但是不得不考慮當i,j為1的時候減去不就變成a[0][j](肯定不符合題意,所以我定義了乙個a[1][1]=1)或者a[i][0]了嗎那麼怎麼辦?再來個迴圈讓a[i][0]為1,因為都為h就只有一種字串。然後正常遞迴。

#includeint main()

}; a[1][1]=1;

for(i=1;i<21;i++)

a[i][0]=1;

for(i=1;i<21;i++)

for(j=1;j<=i;j++)

a[i][j]=a[i-1][j]+a[i][j-1];

while(scanf("%d%d",&m,&n)!=eof)

return 0;

}

ACM HDOJ 下沙的沙子有幾粒?

problem description 2005年11月份,我們學校參加了acm icpc 亞洲賽區成都站的比賽,在這裡,我們獲得了歷史性的突破,儘管只是一枚銅牌,但獲獎那一刻的激動,也許將永遠銘刻在我們幾個人的心頭。藉此機會,特向去年為參加acm亞洲賽而艱苦集訓了近半年的各位老隊員表示感謝。實際上...

HDU 下沙的沙子有幾粒?(遞推)

寫一下自己的思路歷程。1.模擬leetcode的括號匹配,採用dfs 當h的數目大於d的數目且d的數目小於n時,在字串尾增加乙個d 當h的數目小於m時,在子串增加乙個h 結束搜尋的條件是d的數目等於n且h的數目等於m,結束時檢查得到字串是不是符合要求,如果是則ans 最後輸出ans 結果是交上去血t...

hdu 1627 下沙的沙子有幾粒?

題目鏈結 hdu 1627 下沙的沙子有幾粒 problem description input 輸入資料報含多個測試例項,每個佔一行,由兩個整數m和n組成,m和 n 分別表示字串中h和d的個數。由於我們目前所使用的微機和老美的超級計算機沒法比,所以題目給定的資料範圍是 1 n m 20 outpu...