第七屆藍橋杯省賽 抽籤

2022-08-23 18:03:09 字數 1033 閱讀 9428

一、問題描述

x星球要派出乙個5人組成的觀察團前往w星。

其中:a國最多可以派出4人。

b國最多可以派出2人。

c國最多可以派出2人。

....

那麼最終派往w星的觀察團會有多少種國別的不同組合呢?

下面的程式解決了這個問題。

陣列a 中既是每個國家可以派出的最多的名額。

程式執行結果為:

defff

cefff

cdfff

cdeff

ccfff

cceff

ccdff

ccdef

befff

bdfff

bdeff

bcfff

bceff

bcdff

bcdef

....

(以下省略,總共101行)

1

public

classa2

910 string s2 =s;

11for(int i=0; i<=a[k]; i++)15}

1617

public

static

void

main(string args)18;

2021 f(a,0,5,"");22}

23 }

二、題目型別:**填空、遞迴

三、解題思路及答案

第一眼,我竟然沒往遞迴那裡想。。。遞迴出口就在那裡,而你卻視而不見。。。

確定了題目給出的是個遞迴方法,解題就很簡單了,就是抓住遞迴出口,修改方法的引數。一開始我填的是:f(a,k++,n-1,s2),只能說明我der,巨der。首先,直接k++就已經改變了k的原始值,人家**下面還有:s2 += (char)(k+'a'); 這還不溢位???其次,直接簡單的想下一次的需要人數就是n-1,你把我迴圈的 i 放在**?

答案:f(a,k+1,n-i,s2)

藍橋杯 第七屆省賽試題 抽籤

抽籤 x星球要派出乙個5人組成的觀察團前往w星。其中 a國最多可以派出4人。b國最多可以派出2人。c國最多可以派出2人。那麼最終派往w星的觀察團會有多少種國別的不同組合呢?下面的程式解決了這個問題。陣列a 中既是每個國家可以派出的最多的名額。程式執行結果為 defff cefff cdfff cde...

藍橋杯第七屆省賽 抽籤 DFS

x星球要派出乙個5人組成的觀察團前往w星。其中 a國最多可以派出4人。b國最多可以派出2人。c國最多可以派出2人。那麼最終派往w星的觀察團會有多少種國別的不同組合呢?下面的程式解決了這個問題。陣列a 中既是每個國家可以派出的最多的名額。程式執行結果為 defff cefff cdfff cdeff ...

第七屆藍橋杯省賽C B組 抽籤

抽籤 x星球要派出乙個5人組成的觀察團前往w星。其中 a國最多可以派出4人。b國最多可以派出2人。c國最多可以派出2人。那麼最終派往w星的觀察團會有多少種國別的不同組合呢?下面的程式解決了這個問題。陣列a 中既是每個國家可以派出的最多的名額。程式執行結果為 defff cefff cdfff cde...