国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

遞歸解決2的冪次方

2019-11-11 02:34:13
字體:
供稿:網(wǎng)友

總時(shí)間限制: 1000ms 內(nèi)存限制: 65536kB

描述

任何一個正整數(shù)都可以用2的冪次方表示。例如: 137=27+23+20同時(shí)約定方次用括號來表示,即ab可表示為a(b)。由此可知,137可表示為: 2(7)+2(3)+2(0)進(jìn)一步:7=22+2+20(21用2表示) 3=2+20所以最后137可表示為: 2(2(2)+2+2(0))+2(2+2(0))+2(0)又如: 1315=210+28+25+2+1所以1315最后可表示為: 2(2(2+2(0))+2)+2(2(2+2(0)))+2(2(2)+2(0))+2+2(0)

輸入 一個正整數(shù)n(n≤20000)。 輸出 一行,符合約定的n的0,2表示(在表示中不能有空格)。 樣例輸入

137

樣例輸出

2(2(2)+2+2(0))+2(2+2(0))+2(0)

來源 NOip1998復(fù)賽 普及組 第一題

每一個數(shù)都可以分解為2的x次冪加上另外一個數(shù)然后依次遞歸將x和另外的一個數(shù)分解 最后的結(jié)果都可以歸結(jié)為1,2,3三種情況將這三種情況作為程序的結(jié)束點(diǎn)#include <iostream>#include <cmath>using namespace std;int maxNum=142; //2^142>20000void micifang(int n);int main(){ int n; cin >> n; micifang(n); return 0;}void micifang(int n){ if(n==1){ cout << "2(0)"; return; } if(n==2){ cout << "2"; return; } if(n==3){ cout << "2+2(0)"; return; } for(int i=0;i<maxNum;i++){ if( n>=pow(2,i) && n<pow(2,i+1)){ cout << "2("; micifang(i); cout << ")"; if(n-pow(2,i)>0){ cout << '+'; micifang(n-pow(2,i)); } } }}
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 北海市| 都江堰市| 阳江市| 安庆市| 梁山县| 濮阳县| 河池市| 南和县| 玉田县| 行唐县| 什邡市| 甘南县| 贵阳市| 盐山县| 威信县| 磐石市| 阿图什市| 高安市| 云阳县| 石渠县| 冷水江市| 昌黎县| 兰州市| 贵定县| 信阳市| 易门县| 上虞市| 游戏| 台湾省| 平昌县| 调兵山市| 玉溪市| 漾濞| 长垣县| 宝丰县| 满洲里市| 武陟县| 汾阳市| 洛扎县| 庄河市| 建瓯市|