<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                問題描述 任何一個正整數都可以用2進制表示,例如:137的2進制表示為10001001。 將這種2進制表示寫成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))+2(2+2(0))+2(0) 又如:1315=2^10+2^8+2^5+2+1 所以1315最后可表示為: 2(2(2+2(0))+2)+2(2(2+2(0)))+2(2(2)+2(0))+2+2(0) 輸入格式 正整數(1<=n<=20000) 輸出格式 符合約定的n的0,2表示(在表示中不能有空格) 樣例輸入 137 樣例輸出 2(2(2)+2+2(0))+2(2+2(0))+2(0) 樣例輸入 1315 樣例輸出 2(2(2+2(0))+2)+2(2(2+2(0)))+2(2(2)+2(0))+2+2(0) 提示 用遞歸實現會比較簡單,可以一邊遞歸一邊輸出 分析: 按照遞歸程序設計,基本情況,指數為0,1,2的時候分別輸出2(0),2,2(2),指數大于2的時候輸出2(,然后遞歸,遞歸結束輸出),最后還剩一個+號問題,當不是最后一位的時候就需要輸出+號了,具體看程序 ~~~ import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner input = new Scanner(System.in); int num = input.nextInt(); getIndex(num);//調用程序 } private static void getIndex(int n) { int num = 0; int i = 0; int[] a = new int[32]; //把為1的位置都放入到a數組中 while(n>0){ int j = n%2; if (j==1) { a[num++] = i; } i++; n /=2; } //循環遍歷數組,分四種情況 for (i = num - 1; i >=0; i--) { if (a[i]==0) { System.out.print("2(0)"); }else if (a[i]==1) { System.out.print("2"); }else if (a[i]==2) { System.out.print("2(2)"); }else if (a[i]>2) {//當大于2的時候就需要遞歸了 System.out.print("2("); getIndex(a[i]); System.out.print(")"); } if (i!=0) {//只要不是最后一位都需要輸出+號 System.out.print("+"); } } } } ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看