奇怪的比賽

2021-08-18 19:30:42 字數 1514 閱讀 9360

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

每位選手需要回答10

個問題(其編號為1到

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

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

分。某獲勝選手最終得分剛好是100

分,如果不讓你看比賽過程,你能推斷出他(她)哪個題目答對了,哪個題目答錯了嗎?

如果把答對的記為1

,答錯的記為0,則

10個題目的回答情況可以用僅含有1和

0的串來表示。例如:

0010110011 

就是可能的情況。

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

多個答案順序不重要。

//先暴力排列組合,然後根據排列的順序,根據規則計算分數,如果排列的剛好等於100分,怎吧排列的字串輸出

//每種組合方式判斷完要清空一下

public class 奇怪的比賽 {

public static void main(string args) {

// todo auto-generated method stub

stringbuffer sb = new stringbuffer();

for(int i =0; i <=1;i++ ){

for(int j =0; j<=1;j++ ){

for(int k =0; k <=1;k++ ){

for(int l =0; l <=1;l++ ){

for(int m =0; m <=1;m++ ){

for(int n =0; n<=1;n++ ){

for(int o =0; o <=1;o++ ){

for(int p =0; p <=1;p++ ){

for(int q =0; q <=1;q++ ){

for(int r =0; r <=1;r++ ){

int u = i;

sb.insert(0, u);

u = j;

sb.insert(0, u);

u = k;

sb.insert(0, u);

u = l;

sb.insert(0, u);

u = m;

sb.insert(0, u);

u = n;

sb.insert(0, u);

u = o;

sb.insert(0, u);

u = p;

sb.insert(0, u);

u = q;

sb.insert(0, u);

u = r;

sb.insert(0, u);

string bstring = sb.tostring();

string arr = bstring.split("");

int arr2 = new int[arr.length];

for(int v =0; v

奇怪的比賽

某電視台舉辦了低碳生活大獎賽。題目的計分規則相當奇怪 每位選手需要回答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分,如果不讓你看比賽過程,你能...