洛谷 P1010 冪次方

2022-05-21 20:48:11 字數 415 閱讀 5572

p1010 冪次方

#includeusing namespace std;

int ans2[15];//ans2[i]=2^i

int ans1[50001];//如ans1[i]=k,則表示2^(k-1)=i

void work(int a)

if(b>1)//如果是2的超過1次方,則還可以再分,因此輸出2(後將b進行遞迴,遞迴完後如果a-2^b大於0,則輸出)+並遞迴a-2^b=a-ans2[b],否則直接輸出)

else

}}int main()

else

for(i=ans2[k-1];ians1[i]=k-1;

}//快速冪預處理出ans1,ans2

work(n);

return 0;

}

洛谷 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可表示為 ...

洛谷 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可表示為 ...

洛谷 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 ...