筆試 魔法幣問題

2021-09-29 04:44:43 字數 788 閱讀 9119

小易現在一枚魔法幣都沒有

魔法機器1:如果投入x個魔法幣,魔法機器會將其變為2x+1個魔法幣

魔法機器2:如果投入x個魔法幣,魔法機器會將其變為2x+2個魔法幣

小易採購魔法神器總共需要n個魔法幣,所以小易只能通過兩台魔法機器產生恰好n個魔法幣,小易需要你幫他設計乙個投入方案使他最後恰好擁有n個魔法幣。

輸入描述:輸入包括一行,包括乙個正整數n(1 ≤ n ≤ 10^9),表示小易需要的魔法幣數量。

輸出描述:輸出乙個字串,每個字元表示該次小易選取投入的魔法機器。其中只包含字元』1』和』2』。

例:

輸入 10 輸出 122

思路:

可以逆向考慮,相當於將需要的硬幣作為輸出傳進去,如果它是偶數 就用第二台機器求出x,如果是奇數,就用第一台求出x,再遞迴呼叫,最終對結果字串取反,就能求出投入機器的順序

**:

public

class

magiccoin

if(a!=

0&&a%2==

0)if(a!=

0&&a%2==

1)return0;

}public

static

void

main

(string[

] args)

}

用魔法幣機器生產N個魔法幣的問題

機器1 投入x個,生產2 x 1個 機器2 投入x個,生產2 x 2個 請設計乙個方案,使得最後剛好擁有n個魔法幣。輸入 輸入包括一行,包括乙個正數n 1 n 10 9 輸出 輸出乙個字串,每個字元表示選取的機器編號。其中1表示機器1,2表示機器2。分析過程 機器1只會生奇數個魔法幣,機器2生產偶數...

網易筆試程式設計題 魔法幣

小易準備去魔法王國採購魔法神器,購買魔法神器需要使用魔法幣,但是小易現在一枚魔法幣都沒有,但是小易有兩台魔法機器可以通過投入x x可以為0 個魔法幣產生更多的魔法幣。魔法機器1 如果投入x個魔法幣,魔法機器會將其變為2x 1個魔法幣 魔法機器2 如果投入x個魔法幣,魔法機器會將其變為2x 2個魔法幣...

網易刷題 魔法幣

小易準備去魔法王國採購魔法神器,購買魔法神器需要使用魔法幣,但是小易現在一枚魔法幣都沒有,但是小易有兩台魔法機器可以通過投入x x可以為0 個魔法幣產生更多的魔法幣。魔法機器1 如果投入x個魔法幣,魔法機器會將其變為2x 1個魔法幣 魔法機器2 如果投入x個魔法幣,魔法機器會將其變為2x 2個魔法幣...