青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

f(sixleaves) = sixleaves

重劍無鋒 大巧不工

  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
  95 隨筆 :: 0 文章 :: 7 評論 :: 0 Trackbacks
被坑了,2小時的題目,==。題目難點主要在處理空格和輸出格式上。對于這種模擬題,我是先把框架寫好,在補充。
寫得比較長,沒有進行重構,就這樣吧。getchar()等I/O雖然會讀取回車,但是要按下回車,產生中斷,在會結束輸
告訴這些I/O函數來讀取==。總之這題目,沒什么特別的思想,完全是模擬題,能寫:?的語句,盡量寫,簡化代碼
還有代碼寧愿嚴密啰嗦,也不要有Bug

#include <stdio.h>

#include <string.h>

typedef struct {

    int r;

    int c;

} Point;


int main() {

    

    const int maxn = 5;

    char puzzle[maxn][maxn] = {0};

    int kase = 0;

    int first = 1;

    for (;;) {

        

        //  1.先讀取一個字符,看是不是Z,不是Z得看看是不是空字符

        char ch;

        ch = getchar();

        if (ch == 'Z') break;

        else {

            puzzle[0][0] = ch;

            first == 1? first = 0: printf("\n");

        }

        

        Point empty;

        if (ch == ' ') { empty.r = 0, empty.c = 0; }

        

        //  2.讀取Puzzle初始化布局

        for (int i = 1; i < 25; ) {

            ch = getchar();

            if (ch == ' ') {

                puzzle[ empty.r = i / 5 ][ empty.c = i % 5 ] = ch;

                i++;

            }

            if (ch != ' ' && ch != '\n' && ch != '\t' && ch != '\r') {

                puzzle[ i/5 ][ i%5 ] = ch;

                i++;

            }

        }

        

        //  3.執行指令

        int configuration = 1;

        while ((ch = getchar()) != '0') {

            

            if (ch == '\n' || ch == ' ' || !configuration) continue;

            int row = empty.r, col = empty.c;

            if (configuration) {

                switch (ch) {

                        

                    case 'A':

                        if (row - 1 >= 0) {

                            puzzle[row][col] = puzzle[row - 1][col];

                            puzzle[row - 1][col] = ' ';

                            empty.r = row - 1;

                            empty.c = col;

                        }else {

                            configuration = 0;

                        }

                        break;

                    case 'B':

                        if (row + 1 < maxn) {

                            puzzle[row][col] = puzzle[row + 1][col];

                            puzzle[row + 1][col] = ' ';

                            empty.r = row + 1;

                            empty.c = col;

                        }else {

                            configuration = 0;

                        }

                        break;

                    case 'R':

                        if (col + 1 < maxn) {

                            puzzle[row][col] = puzzle[row][col + 1];

                            puzzle[row][col + 1] = ' ';

                            empty.r = row;

                            empty.c = col + 1;

                        }else {

                            configuration = 0;

                        }

                        break;

                    case 'L':

                        if (col - 1 >= 0) {

                            puzzle[row][col] = puzzle[row][col - 1];

                            puzzle[row][col - 1] = ' ';

                            empty.r = row;

                            empty.c = col - 1;

                        }else {

                            configuration = 0;

                        }

                        break;

                    default:

                        configuration = 0;

                        break;

                        

                }

            }

            

        }

        //  4.吃掉回車

        ch = getchar();

        

        //  5.輸出

        if (!configuration) {

            printf("Puzzle #%d:\nThis puzzle has no final configuration.\n", ++kase);

        }else {

            printf("Puzzle #%d:\n", ++kase);

            for (int row = 0; row < maxn; row++) {

                

                for (int col = 0; col < maxn; col++) {

                    

                    printf(col == maxn - 1 ? "%c" : "%c ", puzzle[row][col]);

                    

                }

                printf("\n");

            }

        }

        

    }

    

    return 0;

}

posted on 2015-02-06 10:24 swp 閱讀(374) 評論(0)  編輯 收藏 引用 所屬分類: algorithm
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲女同性videos| 欧美日韩一区二区视频在线观看| 久久精品电影| 欧美亚洲免费在线| 欧美一区二区三区免费观看视频| 欧美一级二级三级蜜桃| 欧美一区二区三区四区在线观看| 欧美一区二区三区四区在线| 欧美在线中文字幕| 久久国产精品久久久| 久久久99精品免费观看不卡| 久久综合久久综合久久| 免费一区二区三区| 日韩一级片网址| 亚洲欧美日韩国产一区二区三区 | 欧美国产欧美亚州国产日韩mv天天看完整| 久久野战av| 亚洲精品久久7777| 一本一本久久a久久精品牛牛影视| 国产精品99久久久久久久久| 欧美影院久久久| 欧美不卡视频一区| 国产精品久久久久一区二区三区| 国产综合色精品一区二区三区| 亚洲精品黄色| 久久久7777| 91久久精品国产| 香蕉免费一区二区三区在线观看| 久热精品视频在线| 国产精品影院在线观看| 极品少妇一区二区三区| 亚洲午夜在线观看| 久久久一二三| 在线视频中文亚洲| 亚洲精品美女91| 欧美一二三区精品| 欧美日韩色综合| 亚洲高清123| 欧美一区免费| 91久久亚洲| 久久国产精品久久久久久电车| 欧美美女福利视频| 激情成人在线视频| 久久国产精品久久w女人spa| 日韩午夜av| 蜜臀av国产精品久久久久| 国产精品午夜在线观看| 亚洲精品国产系列| 欧美freesex交免费视频| 亚洲视频网站在线观看| 欧美激情国产精品| 91久久精品国产91久久性色tv| 久久久久www| 亚洲欧美在线高清| 国产精品色一区二区三区| 99热免费精品| 欧美国产成人精品| 久久久久一区二区三区四区| 国产日本精品| 久久xxxx精品视频| 先锋影音久久| 国产永久精品大片wwwapp| 欧美亚洲一区二区在线观看| 一区二区三区欧美成人| 欧美日本一区二区高清播放视频| 亚洲人成亚洲人成在线观看| 男同欧美伦乱| 免费日韩视频| 亚洲精品欧洲精品| 亚洲精品一区二区三区福利| 欧美日韩 国产精品| 中日韩在线视频| 在线亚洲+欧美+日本专区| 欧美日韩视频在线第一区| 亚洲一区二区免费视频| 在线亚洲+欧美+日本专区| 国产麻豆综合| 久久久www成人免费毛片麻豆| 亚洲欧美国产高清| 国一区二区在线观看| 免费国产一区二区| 欧美va亚洲va日韩∨a综合色| 日韩亚洲欧美高清| 亚洲黄色一区| 欧美三级资源在线| 欧美一区二区三区成人| 久久精精品视频| 日韩一级在线观看| 亚洲小说欧美另类婷婷| 国内精品视频在线播放| 亚洲国产老妈| 国产精品欧美日韩一区| 欧美黄色网络| 在线看成人片| 欧美a一区二区| 欧美色偷偷大香| 久久久久久九九九九| 男女视频一区二区| 亚洲欧美一区在线| 免费成人你懂的| 亚洲一区二区影院| 久久国产欧美日韩精品| 妖精视频成人观看www| 羞羞色国产精品| 日韩一级黄色片| 欧美在线播放高清精品| 一区二区日韩精品| 久久全国免费视频| 欧美亚洲日本国产| 欧美日韩国产精品 | 亚洲国产综合在线| 中文高清一区| 亚洲欧洲视频在线| 午夜一级在线看亚洲| 亚洲精品影视| 久久久噜噜噜久噜久久| 欧美一区2区视频在线观看| 欧美国产精品人人做人人爱| 久久久久一区| 国产欧美日韩视频一区二区三区| 亚洲丰满在线| 黄色成人小视频| 亚洲欧美综合精品久久成人| 99精品视频免费在线观看| 久久在线免费观看视频| 久久久精品国产一区二区三区| 欧美精品在线看| 亚洲国产精品999| 在线精品一区| 久久久国产视频91| 久久久久国产精品麻豆ai换脸| 国产精品二区在线观看| 亚洲人午夜精品免费| 亚洲国产日韩综合一区| 久久男人资源视频| 另类av导航| 国产在线视频欧美一区二区三区| 亚洲一区二区三区四区五区午夜| 99re热这里只有精品免费视频| 免费不卡中文字幕视频| 欧美电影在线观看完整版| 极品少妇一区二区| 欧美综合国产精品久久丁香| 久久久久久一区二区| 国色天香一区二区| 久久久久九九视频| 牛夜精品久久久久久久99黑人 | 亚洲一线二线三线久久久| 欧美欧美午夜aⅴ在线观看| 亚洲激情亚洲| 亚洲午夜久久久| 国产精品色婷婷| 久久成人在线| 亚洲第一区中文99精品| 最新热久久免费视频| 欧美精品一二三| 一区二区三区精品| 欧美专区在线播放| 欧美激情在线免费观看| 99在线精品视频| 欧美日韩在线一区二区三区| 在线亚洲精品福利网址导航| 午夜精品99久久免费| 国产午夜久久久久| 久久综合久久综合久久综合| 亚洲欧洲在线观看| 亚洲欧美视频在线观看视频| 国模套图日韩精品一区二区| 久久久久se| 亚洲美女av黄| 久久精品99国产精品| 亚洲国产成人不卡| 欧美午夜一区二区福利视频| 欧美一区二区日韩| 亚洲国产高清视频| 小处雏高清一区二区三区| 极品中文字幕一区| 国产精品国产三级国产专播精品人 | 黄网动漫久久久| 欧美成人免费在线观看| 亚洲一级网站| 欧美激情二区三区| 欧美一区二区精品久久911| 亚洲黄色小视频| 国产一区二区三区久久久久久久久 | 99re这里只有精品6| 久久成人一区二区| 夜夜嗨av一区二区三区四季av| 国产亚洲aⅴaaaaaa毛片| 欧美大片第1页| 久久精品色图| 亚洲欧美自拍偷拍| 亚洲精品一区二区三区婷婷月| 久久久国产精品一区二区中文| 一区二区三欧美| 日韩视频在线观看国产| 一区二区三区在线高清| 国产精品一区二区在线| 欧美日韩一区二区在线播放| 欧美成人高清|