TopCoder

Thumb output jddoia
$\huge 南ことり$
$https://www.ototot.com.tw/TIOJ/ \\我要拿牌、去東京、變紅色,那就努力吧 \\ 確かな今よりも新しい夢つかまえたい$

User's AC Ratio

91.0% (71/78)

Submission's AC Ratio

63.5% (115/181)

Description

大家都知道魯夫吃過橡皮果實,而一旦有人貪心吃了第二顆惡魔果實,就會被炸成碎片。有一天魯夫吃了一顆惡猿果實,是沒有被炸成碎片,但是身體卻產生了奇妙的轉變。
  他的行為開始變得非常二元,因此他走路時,第一步總是長 $1$ 公尺,但每走一步路,腳的長度就會增長為二倍,相對的步伐長度也增為二倍,也就是說,走第 $k$ 步時他能走的距離是 2k-1 公尺。
  有一天,魯夫在他正前方 $d$ 公尺發現了寶藏,其中$d$ 為奇數,但第 $k$ 步他只能往寶藏的方向或往寶藏的反方向走 2k-1 公尺。請幫幫魯夫得到寶藏,告訴他最快走到寶藏要走幾步,並且應該如何走?

Input Format

一個正奇數 $d$,$1\le d\le 100,000,000$,代表寶藏在前方多遠。

Output Format

首先輸出至少要走幾步,再來輸出走法。走法中,”+”代表往起點到寶藏的方向走,”-”則代表往寶藏到起點的方向走;第一個符號代表第一步(1公尺)要往哪邊走,第二個符號代表第二步……以此類推。

Sample Input

11

Sample Output

4
+-++

Hints

Problem Source

原TIOJ1026 / 96建中校內資訊能力競賽(prob3)

Subtasks

For Testdata: 0 ~ 0, Score: 14
For Testdata: 1 ~ 1, Score: 14
For Testdata: 2 ~ 2, Score: 14
For Testdata: 3 ~ 3, Score: 14
For Testdata: 4 ~ 4, Score: 14
For Testdata: 5 ~ 5, Score: 14
For Testdata: 6 ~ 6, Score: 16
No. Time Limit (ms) Memory Limit (KiB) Output Limit (KiB)
0 1000 65536 65536
1 1000 65536 65536
2 1000 65536 65536
3 1000 65536 65536
4 1000 65536 65536
5 1000 65536 65536
6 1000 65536 65536