• <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 閱讀(238) 評論(0)  編輯 收藏 引用 所屬分類: G_其他

            導航

            <2010年11月>
            31123456
            78910111213
            14151617181920
            21222324252627
            2829301234
            567891011

            統計

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            搜索

            最新評論

            閱讀排行榜

            評論排行榜

            国产成人久久精品激情| 亚洲精品综合久久| 久久中文字幕一区二区| 久久久WWW免费人成精品| 欧美久久久久久| 精品国产91久久久久久久| 免费一级做a爰片久久毛片潮| 亚洲精品美女久久777777| 免费观看久久精彩视频| 婷婷久久五月天| 国产69精品久久久久9999| 亚洲va久久久噜噜噜久久天堂| 97超级碰碰碰碰久久久久| 中文字幕乱码人妻无码久久| 9191精品国产免费久久| 人妻精品久久久久中文字幕一冢本| 国产亚州精品女人久久久久久 | 国产精品日韩深夜福利久久| 久久久久亚洲AV无码观看| 精品久久久久中文字幕一区| 久久久久亚洲AV片无码下载蜜桃| 婷婷久久综合九色综合绿巨人| 99热热久久这里只有精品68| 久久精品国产99国产精偷| 久久亚洲精品人成综合网| 久久99热这里只有精品国产| 日本久久久久久久久久| 精品人妻伦一二三区久久| 久久亚洲国产欧洲精品一| 国产99精品久久| 高清免费久久午夜精品| 久久亚洲精品视频| 久久精品无码一区二区三区日韩| 91精品日韩人妻无码久久不卡| 久久精品九九亚洲精品| 日韩人妻无码精品久久免费一| 2020国产成人久久精品 | 91精品国产色综合久久| 久久99国产精品久久99| 国产69精品久久久久99| 人妻少妇精品久久|