奇怪的比賽 java

2021-09-13 03:39:49 字數 853 閱讀 4383

某電視台舉辦了低碳生活大獎賽。題目的計分規則相當奇怪:

每位選手需要回答10個問題(其編號為1到10),越後面越有難度。答對的,當前分數翻倍;答錯了則扣掉與題號相同的分數(選手必須回答問題,不回答按錯誤處理)。

每位選手都有乙個起步的分數為10分。

某獲勝選手最終得分剛好是100分,如果不讓你看比賽過程,你能推斷出他(她)哪個題目答對了,哪個題目答錯了嗎?

如果把答對的記為1,答錯的記為0,則10個題目的回答情況可以用僅含有1和0的串來表示。例如:0010110011 就是可能的情況。

你的任務是算出所有可能情況。每個答案佔一行。

多個答案順序不重要。

答案寫在「解答.txt」中,不要寫在這裡!

解題思路:

本題主要考察對遞迴的運用,但也不算是純粹的遞迴,只是通過遞迴將所有可能出現的結果得到,再通過迴圈判斷得出符合題目要求的結果,最終以字串的形式表示出來。具體思路在**注釋中有詳細解釋。

**如下:

public class main 

private static void process(string str, int i)

process(str+'1',i+1);

process(str+'0',i+1);//通過遞迴將所有可能情況代入字串進行判斷

奇怪的比賽

某電視台舉辦了低碳生活大獎賽。題目的計分規則相當奇怪 每位選手需要回答10個問題 其編號為1到10 越後面越有難度。答對的,當前分數翻倍 答錯了則扣掉與題號相同的分數 選手必須回答問題,不回答按錯誤處理 每位選手都有乙個起步的分數為10分。某獲勝選手最終得分剛好是100分,如果不讓你看比賽過程,你能...

奇怪的比賽

include include include include include includeusing namespace std const int target 100 int globalcnt 0 int cnt 11 int next int id,int cur 開始答第id道題 in...

奇怪的比賽

某電視台舉辦了低碳生活大獎賽。題目的計分規則相當奇怪 每位選手需要回答10個問題 其編號為1到10 越後面越有難度。答對的,當前分數翻倍 答錯了則扣掉與題號相同的分數 選手必須回答問題,不回答按錯誤處理 每位選手都有乙個起步的分數為10分。某獲勝選手最終得分剛好是100分,如果不讓你看比賽過程,你能...