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

            A Za, A Za, Fighting...

            堅信:勤能補拙

            PKU 1102 LC-Display (有趣的模擬)

            LC-Display
            Time Limit: 1000MSMemory Limit: 10000K
            Total Submissions: 10720Accepted: 4221

            Description

            A friend of you has just bought a new computer. Until now, the most powerful computer he ever used has been a pocket calculator. Now, looking at his new computer, he is a bit disappointed, because he liked the LC-display of his calculator so much. So you decide to write a program that displays numbers in an LC-display-like style on his computer.

            Input

            The input contains several lines, one for each number to be displayed. Each line contains two integers s, n (1 <= s <= 10, 0 <= n <= 99 999 999), where n is the number to be displayed and s is the size in which it shall be displayed. 

            The input file will be terminated by a line containing two zeros. This line should not be processed.

            Output

            Output the numbers given in the input file in an LC-display-style using s "-" signs for the horizontal segments and s "|" signs for the vertical ones. Each digit occupies exactly s+2 columns and 2s+3 rows. (Be sure to fill all the white space occupied by the digits with blanks, also for the last digit.) There has to be exactly one column of blanks between two digits. 

            Output a blank line after each number. (You will find a sample of each digit in the sample output.)

            Sample Input

            2 12345
            3 67890
            0 0

            Sample Output

                  --   --        -- 
               |    |    | |  | | 
               |    |    | |  | | 
                  --   --   --   -- 
               | |       |    |    |
               | |       |    |    |
                  --   --        -- 
            
             ---   ---   ---   ---   --- 
            |         | |   | |   | |   |
            |         | |   | |   | |   |
            |         | |   | |   | |   |
             ---         ---   --- 
            |   |     | |   |     | |   |
            |   |     | |   |     | |   |
            |   |     | |   |     | |   |
             ---         ---   ---   ---

            Source


            思路:
            這題,不會...
            無奈看其他人代碼,發現居然可以寫的這么簡潔...佩服...

            代碼:
             1 #include<stdio.h>
             2 #include<stdlib.h>
             3 #include<string.h>
             4 #define MAX_LEN 10
             5 int n;
             6 char str[MAX_LEN];
             7 const int mark[5][10][3= {
             8   /*    0       1        2        3        4        5        6        7        8        9    */
             9      0,1,00,0,00,1,00,1,00,0,00,1,00,1,00,1,00,1,00,1,0,
            10     1,0,10,0,10,0,10,0,11,0,11,0,01,0,00,0,11,0,11,0,1,
            11     0,0,00,0,00,1,00,1,00,1,00,1,00,1,00,0,00,1,00,1,0,
            12     1,0,10,0,11,0,00,0,10,0,10,0,11,0,10,0,11,0,10,0,1,
            13     0,1,00,0,00,1,00,1,00,0,00,1,00,1,00,0,00,1,00,1,0 };
            14 
            15 int
            16 main(int argc, char **argv)
            17 {
            18     int j, k, p, q, w;
            19     while(scanf("%d %s"&n, str) != EOF) {
            20         if(!n)
            21             break;
            22         for(j=0; j<5; j++) {
            23             if(j%2 == 0) {
            24                 for(p=0; str[p]!='\0'; p++) {
            25                     printf(" "); /* mark[j][k][0] */
            26                     k = str[p] - '0';
            27                     for(q=0; q<n; q++
            28                         printf("%s", mark[j][k][1]?"-":" ");
            29                     printf(" "); /* mark[j][k][2] */
            30                     printf(" ");
            31                 }
            32                 printf("\n");
            33             } else {
            34                 for(q=0; q<n; q++) {
            35                     for(p=0; str[p]!='\0'; p++) {
            36                         k = str[p] - '0';
            37                         printf("%s", mark[j][k][0]?"|":" ");
            38                         for(w=0; w<n; w++)
            39                             printf(" ");
            40                         printf("%s", mark[j][k][2]?"|":" ");
            41                         printf(" ");
            42                     }
            43                     printf("\n");
            44                 }
            45             }
            46         }
            47         printf("\n");
            48     }
            49     return 0;
            50 }

            posted on 2010-11-09 16:46 simplyzhao 閱讀(233) 評論(0)  編輯 收藏 引用 所屬分類: G_其他

            導航

            <2010年8月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            2930311234

            統計

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            亚洲成色WWW久久网站| 久久人人爽人人爽人人片AV麻豆| 日本五月天婷久久网站| 久久精品综合网| 久久永久免费人妻精品下载| 久久精品国产亚洲av麻豆小说| 日本精品久久久久中文字幕| 久久久久99精品成人片三人毛片| 久久久中文字幕日本| 久久久SS麻豆欧美国产日韩| 俺来也俺去啦久久综合网| 91久久精品视频| 久久久高清免费视频| 久久99国产综合精品| 国产无套内射久久久国产| 欧美伊人久久大香线蕉综合| 国产精品一区二区久久精品| 久久国产精品视频| 日韩AV无码久久一区二区| 91精品国产综合久久四虎久久无码一级| 精品一久久香蕉国产线看播放 | 久久精品日日躁夜夜躁欧美| 亚洲av成人无码久久精品| 国产精品美女久久久网AV| 色狠狠久久AV五月综合| 精品久久久久久无码人妻蜜桃| 中文字幕乱码人妻无码久久| 国产免费久久精品99久久| 久久水蜜桃亚洲av无码精品麻豆 | 亚洲午夜久久久久妓女影院| 999久久久免费国产精品播放| 久久久无码精品亚洲日韩京东传媒 | 久久国产精品一国产精品金尊| 久久久国产精品| 国产午夜久久影院| 久久综合噜噜激激的五月天| 三级韩国一区久久二区综合| 久久综合九色综合精品| 久久99精品久久久久久久久久| 2021国产精品午夜久久| 四虎国产精品成人免费久久|