網易刷題 魔法幣

2021-10-08 22:34:50 字數 979 閱讀 8280

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

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

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

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

輸入描述:

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

輸出描述:

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

輸入例子1:

10
輸出例子1:

122
思路:逆向推導,可以觀察到,從魔法機器1出來的魔法幣,數量一定是奇數,從魔法機器2出來的魔法幣,數量一定是偶數,那麼可以利用這一點,推導出本次魔法幣是從哪台機器**來的,再根據逆向演算法推導,就可以投入前的魔法幣數量,最後一直推導0

c**實現:

#include

#include

#include

#include

#include

using

namespace std;

intmain()

else

}for

(int i=

(str.

length()

-1);i>=

0;i--

)printf

("\n");

return0;

}

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

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

網易2018面試題 魔法幣

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

筆試 魔法幣問題

小易現在一枚魔法幣都沒有 魔法機器1 如果投入x個魔法幣,魔法機器會將其變為2x 1個魔法幣 魔法機器2 如果投入x個魔法幣,魔法機器會將其變為2x 2個魔法幣 小易採購魔法神器總共需要n個魔法幣,所以小易只能通過兩台魔法機器產生恰好n個魔法幣,小易需要你幫他設計乙個投入方案使他最後恰好擁有n個魔法...