• <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>

            f(sixleaves) = sixleaves

            重劍無鋒 大巧不工

              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              95 隨筆 :: 0 文章 :: 7 評論 :: 0 Trackbacks
             1 #include <stdio.h>
             2 #include <string.h>
             3 
             4 
             5 int readChar();
             6 int readInt(int c);
             7 int readCodes();
             8 
             9 /*
            10  1.讀取字符時候如何過濾掉換行符號,兼容類unix和windows操作系統 readChar()
            11  2.熟練掌握將二進制字符串映射到數組的數據結構,這個數據結構是個二元組,我們可以用該二元組唯一確定一個長度為len的二進制字符串
            12  (len, value) ---- > code[len][value]
            13  
            14  */
            15 
            16 int main() {
            17 
            18     
            19     while ( readCodes() ) { // 讀編碼頭
            20         
            21         for (;;) {  // 讀信息
            22             
            23             int len = readInt(3);
            24             if (0 == len) break// 全0該信息結束
            25             
            26             for (;;) {  // 讀信息段
            27                 
            28                 int v = readInt(len);
            29                 
            30                 if (v == (1 << len) - 1break// 全1一個信息段結束
            31                 putchar(code[len][v]);
            32                 
            33             }
            34             
            35         }
            36         
            37         putchar('\n');
            38     }
            39 }
            40 
            41 
            42 int readInt(int l) {
            43     
            44     int v = 0;
            45     //已經讀取了3 - l個字符
            46     while (l--) {
            47         
            48         v = v * 2 + readChar() - '0';
            49         
            50     }
            51     return v;
            52     
            53 }
            54 
            55 
            56 char readChar() {
            57     
            58     char ch;
            59     do {
            60         
            61         ch = getchar();
            62         
            63     }while ( '\n' != ch || '\r' != ch )
            64     return ch;
            65 }
            66 
            67 
            68 int readCodes() {
            69     
            70     
            71     memset(code, 0sizeof(code));
            72     
            73     // 因為可能讀取編碼頭獨占一行,所以我們可能讀取編碼頭時候會讀取到上一次的回車換行,所以要使用readChar函數
            74     code[1][0= readChar();
            75     
            76     for (int len = 2; len < 8; len++) {
            77         
            78         for (int v = 0; v < (1 << len) - 1; v++) {
            79             
            80             char ch = getchar();
            81             if ( EOF == ch ) return 0;
            82             if ( '\n' == ch || '\r' == ch) return 1;
            83             code[len][v] = ch;
            84             
            85         }
            86         
            87     }
            88     return 1;
            89     
            90     
            91 }
            posted on 2015-03-13 20:06 swp 閱讀(177) 評論(0)  編輯 收藏 引用 所屬分類: algorithm
            99久久综合狠狠综合久久| 久久只有这里有精品4| 99国产欧美久久久精品蜜芽| 久久综合给合久久狠狠狠97色| 久久精品无码专区免费青青| 久久夜色tv网站| 久久综合九色综合网站| 久久本道伊人久久| 国产免费久久精品99re丫y| 国产成人精品久久免费动漫 | 伊人久久大香线蕉综合影院首页| 精品久久久久久亚洲精品 | 亚洲欧美日韩精品久久亚洲区 | 国产一级做a爰片久久毛片| 亚洲国产综合久久天堂 | av午夜福利一片免费看久久| 久久久久亚洲AV成人网人人网站| 久久精品www人人爽人人| 热久久最新网站获取| 丰满少妇人妻久久久久久4| 狠狠色婷婷久久综合频道日韩| 久久精品成人| 88久久精品无码一区二区毛片| 一本久久知道综合久久| 欧美日韩中文字幕久久久不卡| 99久久精品影院老鸭窝| 色诱久久久久综合网ywww| 久久无码国产| 亚洲欧美一级久久精品| 老司机午夜网站国内精品久久久久久久久 | 久久久久人妻一区二区三区vr| 精品久久无码中文字幕| 77777亚洲午夜久久多喷| 午夜精品久久久久| 综合久久给合久久狠狠狠97色 | 伊人久久大香线蕉无码麻豆| 久久精品国产亚洲一区二区三区 | 波多野结衣久久精品| 国产精品久久久久久久久久影院 | 欧美黑人又粗又大久久久| 亚洲人成伊人成综合网久久久|