3.湊算式
b def
a + --- + ------- = 10
c ghi
(如果顯示有問題,可以參見【圖1.jpg】)
這個算式中a~i代表1~9的數字,不同的字母代表不同的數字。
比如:6+8/3+952/714 就是一種解法,
5+3/1+972/486 是另一種解法。
這個算式一共有多少種解法?
注意:你提交應該是個整數,不要填寫任何多餘的內容或說明性文字。
思路:不能認為這三個數都是整數,可能3個分數加起來正好組成乙個整數,舉個例子啊1/3+2/3=1,前2個數都是分數可結果是整數,用double可能會造成精度問題,所以要最好將式子變一下,acghi+bghi+cdef=10cghi
答案:29
5.抽籤
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行)
#include
#define n 6
#define m 5
#define buf 1024
void f(int a, int k, int m, char b)
for(i=0; i<=a[k]; i++)
}int main()
;char b[buf];
f(a,0,m,b);
return 0;
}仔細閱讀**,填寫劃線部分缺少的內容。
注意:不要填寫任何已有內容或說明性文字。
#include #define n 6
#define m 5
#define buf 1024
//a為每個國家可以派出的人數,k為目前正在k國選人,m為剩餘的人數,b為儲存已經選到的人數
void f(int a, int k, int m, char b)
//列舉每個國家選的人數
for(i=0; i<=a[k]; i++),,,};
//total表示的是滿足條件的總數,can表示的是每次剪時能連到一塊的數量
static int total = 0,can = 0;
public static void main(string args)
} sum = 1;
for (int i=1; i<=5; i++)
sum *= i;
dfs(0);
//除以5的階乘的原因是12345,12354等5的全排列都能滿足條件,而這是一種剪法
system.out.println(total / sum);
} private static void dfs(int cur)
}for (int i=0; i<3; i++) }}
}can = 0;
judge(x,y);
if (can == 5)
total++;
return;
}for (int i=1; i<=12; i++)
}}
交換瓶子 2023年第七屆藍橋杯
交換瓶子 有n個瓶子,編號 1 n,放在架子上。比如有5個瓶子 2 1 3 5 4 要求每次拿起2個瓶子,交換它們的位置。經過若干次後,使得瓶子的序號為 1 2 3 4 5 對於這麼簡單的情況,顯然,至少需要交換2次就可以復位。如果瓶子更多呢?你可以通過程式設計來解決。輸入格式為兩行 第一行 乙個正...
2016第七屆藍橋杯剪郵票
如 圖1.jpg 有12張連在一起的12生肖的郵票。現在你要從中剪下5張來,要求必須是連著的。僅僅連線乙個角不算相連 比如,圖2.jpg 圖3.jpg 中,粉紅色所示部分就是合格的剪取。請你計算,一共有多少種不同的剪取方法。請填寫表示方案數目的整數。注意 你提交的應該是乙個整數,不要填寫任何多餘的內...
2023年藍橋杯B組初賽(第七屆)
寫在前面的話,藍橋杯快要開始了。畢竟參加了就得做些準備,今天開始做一些題目練習一下,為4月1號的比賽做些準備。題目見 第一題 簡單的求和題。include include using namespace std int a 110 int main for i 1 i 100 i cout 0 第二...