Part2 4 P1010 冪次方 遞迴 分治

2022-10-09 01:24:13 字數 782 閱讀 7711

題意:任何乙個正整數都可以用 22 的冪次方表示。例如 137=2^7+2^3+2^0137=27+23+20。

同時約定方次用括號來表示,即 a^bab 可表示為 a(b)a(b)。

由此可知,137137 可表示為 2(7)+2(3)+2(0)2(7)+2(3)+2(0)

進一步:

7= 2^2+2+2^07=22+2+20 ( 2^121 用 22 表示),並且 3=2+2^03=2+20。

所以最後 137137 可表示為 2(2(2)+2+2(0))+2(2+2(0))+2(0)2(2(2)+2+2(0))+2(2+2(0))+2(0)。

又如 1315=2^ +2^8 +2^5 +2+11315=210+28+25+2+1

所以 13151315 最後可表示為 2(2(2+2(0))+2)+2(2(2+2(0)))+2(2(2)+2(0))+2+2(0)2(2(2+2(0))+2)+2(2(2+2(0)))+2(2(2)+2(0))+2+2(0)。

思路:二進位制迴圈處理最後一位進行拼接

評價:

1 #include2

using

namespace

std;3//

#define mod 1000000007

4 typedef long

long

ll;5

string f(intx)6

while(x>>=1

);16

return

s;17}18

intmain()

19

P1010 冪次方(遞迴)

題目描述 任何乙個正整數都可以用2的冪次方表示。例如 137 2 7 2 3 2 0 同時約定方次用括號來表示,即a b 可表示為a b 由此可知,137可表示為 2 7 2 3 2 0 進一步 7 2 2 2 2 0 2 1用2表示 3 2 2 0 所以最後137可表示為 2 2 2 2 2 0 ...

P1010 冪次方 題解

任何乙個正整數都可以用 22 的冪次方表示。例如 137 2 7 2 3 2 0137 27 23 20。同時約定方次用括號來表示,即 a bab 可表示為 a b a b 由此可知,137137 可表示為 2 7 2 3 2 0 2 7 2 3 2 0 進一步 7 2 2 2 2 07 22 2 ...

洛谷 P1010 冪次方

前言 只為轉c 刷水題.題目描述 任何乙個正整數都可以用2的冪次方表示。例如 137 2 7 2 3 2 0 同時約定方次用括號來表示,即a b 可表示為a b 由此可知,137可表示為 2 7 2 3 2 0 進一步 7 2 2 2 2 0 2 1用2表示 3 2 2 0 所以最後137可表示為 ...