藍橋杯 砝碼稱重 遞迴 解題報告

2021-06-28 21:13:13 字數 700 閱讀 4093

5個砝碼

用天平稱重時,我們希望用盡可能少的砝碼組合稱出盡可能多的重量。

如果只有5個砝碼,重量分別是1,3,9,27,81。則它們可以組合稱出1到121之間任意整數重量(砝碼允許放在左右兩個盤中)。

本題目要求程式設計實現:對使用者給定的重量,給出砝碼組合方案。

例如:使用者輸入:

5程式輸出:

9-3-1

使用者輸入:

19程式輸出:

27-9+1

要求程式輸出的組合總是大數在前小數在後。

可以假設使用者的輸入的數字符合範圍1~121。

對於每乙個數,它有三種符號,-1,0,1,確定了每個數的符號,我們只要將這些數相加就可以得到乙個和,將這個和與輸入的資料相比較看是否相等。知道了這個大體思路,可能有些同學已經想到通過5個for迴圈暴力出來,但是作為一名程式設計者+強迫症患者,我無法忍受這麼大一坨迴圈出現在我的**之中,所以,當然還是用遞迴代替之。我們先設定乙個符號位陣列sign,在遞迴的過程中,依次確定sign[0]到sign[4]的值(-1,0,1),當遞迴到第6層的時候,可以知道,sign中所有的值都已經被確定,然後我們就可以用這個符號位來求和,最後輸出就可以了。

#include#include#include#includeusing namespace std;

void show(int *sign)

藍橋杯 砝碼稱重

5個砝碼 用天平稱重時,我們希望用盡可能少的砝碼組合稱出盡可能多的重量。如果只有5個砝碼,重量分別是1,3,9,27,81。則它們可以組合稱出1到121之間任意整數重量 砝碼允許放在左右兩個盤中 本題目要求程式設計實現 對使用者給定的重量,給出砝碼組合方案。例如 使用者輸入 5程式輸出 androi...

藍橋杯 回型巢狀 遞迴 解題報告

觀察這個圖形,它是由一系列正方形的星號方框巢狀而成。在上邊的例子中,最外方框的邊長為11。本題的任務就是從標準輸入獲得乙個整數n 1 程式輸出 輸入 6 程式輸出 記得以前做過乙個類似的列印圖形的的題目,都是大圖套小圖,這種題目首先要找到規律,然後再確定要使用的方法,對於這種列印巢狀相似圖形的題目,...

藍橋杯 演算法提高VIP 盾神與砝碼稱重

時間限制 1sec 記憶體限制 128mb 提交 58 解決 15 題目描述 有一天,他在宿舍裡無意中發現了乙個天平!這 個天平很奇怪,有n個完好的砝碼,但是沒有遊碼。盾神為他的發現興奮不已!於是他準備去稱一稱自己的東西。他準備好了m種物品去稱。神奇的是,盾神一早就 知道這m種物品的重量,他現在是想...