• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            worm

            為什么我的眼里飽含淚水?因為我程序沒寫完!
            隨筆 - 5, 文章 - 2, 評論 - 10, 引用 - 0
            數據加載中……

            poj 3191解題報告

            The Moronic Cowmpouter
            Time Limit: 1000MS Memory Limit: 65536K
            Total Submissions: 1344 Accepted: 676

            Description

            Inexperienced in the digital arts, the cows tried to build a calculating engine (yes, it's a cowmpouter) using binary numbers (base 2) but instead built one based on base negative 2! They were quite pleased since numbers expressed in base −2 do not have a sign bit.

            You know number bases have place values that start at 1 (base to the 0 power) and proceed right-to-left to base^1, base^2, and so on. In base −2, the place values are 1, −2, 4, −8, 16, −32, ... (reading from right to left). Thus, counting from 1 goes like this: 1, 110, 111, 100, 101, 11010, 11011, 11000, 11001, and so on.

            Eerily, negative numbers are also represented with 1's and 0's but no sign. Consider counting from −1 downward: 11, 10, 1101, 1100, 1111, and so on.

            Please help the cows convert ordinary decimal integers (range -2,000,000,000..2,000,000,000) to their counterpart representation in base −2.

            Input

            Line 1: A single integer to be converted to base −2

            Output

            Line 1: A single integer with no leading zeroes that is the input integer converted to base −2. The value 0 is expressed as 0, with exactly one 0.

            Sample Input

            -13

            Sample Output

            110111

            Hint

            Explanation of the sample:

            Reading from right-to-left:
            1*1 + 1*-2 + 1*4 + 0*-8 +1*16 + 1*-32 = -13
             題目的意思就是讓你把一個數轉換為-2進制,
            基本原理:
                           如果n為奇數,那么末位肯定為1,因此就可以轉為求(x-1)/-2 的子問題了! (除以-2可以類比十進制就能理解了)
                           如果n為偶數,末位必為0,然后再轉為求x/-2的子問題;
            結束條件當 n=1。
            思路很簡單,但是有兩個小方面要提提,一定要考慮n=0的情況,我就是沒考慮而一直超時,郁悶,還找不出錯誤,陷入了死循環怪不得超時,還有注意球的結果是逆序的!!呵呵下面是代碼:
             1//============================================================================
             2// Name        : poj 3191.cpp
             3// Author      : worm
             4// Copyright   : Your copyright notice
             5// Description :把一個十進制的數轉換為-2進制的數
             6//============================================================================
             7
             8#include <iostream>
             9#include <stdio.h>
            10#include <string>
            11#include <math.h>
            12using namespace std;
            13string a= "";
            14int main() {
            15    int x;
            16    cin >> x;
            17    if (x == 0{
            18        cout <<"0"<<endl;
            19        return 0;
            20    }

            21
            22    while (x != 1{
            23        if (abs(x) % 2 == 1{
            24            a += '1';
            25            x = (x-1)/-2;
            26            continue;
            27        }

            28        a += '0';
            29        x /= -2;
            30    }

            31    cout <<"1";
            32    for (int i = a.length() - 1; i >= 0; i--{
            33        printf("%c",a[i]);
            34    }

            35
            36    return 0;
            37}

            38

            posted on 2009-03-08 12:37 WORM 閱讀(1161) 評論(1)  編輯 收藏 引用

            評論

            # re: poj 3191解題報告  回復  更多評論   

            已閱 刪之
            2009-03-08 20:24 | cppexplore
            久久精品久久久久观看99水蜜桃| 91精品国产91久久久久久青草| 久久久久亚洲精品天堂| 久久久久久九九99精品| 久久精品国产亚洲5555| 久久久久高潮毛片免费全部播放| 久久精品国产影库免费看| 色欲综合久久躁天天躁| 久久久一本精品99久久精品88| 777久久精品一区二区三区无码| 亚洲精品无码久久久久sm| 超级碰久久免费公开视频| 久久婷婷成人综合色综合| 亚洲午夜久久久| 久久精品国产精品亚洲下载| 久久91精品国产91久久小草| 亚洲中文字幕无码久久2017| 漂亮人妻被中出中文字幕久久 | 婷婷久久香蕉五月综合加勒比| 日本亚洲色大成网站WWW久久| 国内精品久久久久久久涩爱| 国内精品九九久久久精品| 亚洲级αV无码毛片久久精品| 亚洲国产美女精品久久久久∴| 少妇高潮惨叫久久久久久| 久久久噜噜噜久久中文字幕色伊伊| 欧美日韩成人精品久久久免费看| 亚洲Av无码国产情品久久| 欧美一级久久久久久久大| 97久久国产露脸精品国产| 中文精品久久久久人妻不卡| 77777亚洲午夜久久多喷| 久久噜噜电影你懂的| 狠狠色丁香久久婷婷综合蜜芽五月 | 久久久久国色AV免费观看| 久久久久黑人强伦姧人妻| 一本色道久久综合狠狠躁| 99久久国产综合精品麻豆| 久久成人国产精品一区二区| 青青久久精品国产免费看| 无遮挡粉嫩小泬久久久久久久|