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

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 閱讀(379) 評論(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>
            国产精品欧美风情| 欧美大片免费看| 免费一级欧美片在线播放| 亚洲一区二区三区在线播放| 亚洲另类自拍| 国产精品99久久久久久久女警 | 久久国产乱子精品免费女| 亚洲视频在线观看| 午夜影院日韩| 久久伊人一区二区| 亚洲国产mv| 欧美激情bt| 一区二区三区精品| 欧美一区二区三区久久精品| 久久国产精品亚洲va麻豆| 久久久www免费人成黑人精品| 美女免费视频一区| 国产精品国产一区二区| 黑人中文字幕一区二区三区| 亚洲精品永久免费精品| 午夜精品福利一区二区三区av | 香蕉久久一区二区不卡无毒影院| 欧美一进一出视频| 欧美激情第8页| 亚洲精品在线三区| 久热精品视频在线| 亚洲片国产一区一级在线观看| 一区二区激情视频| 久久一二三四| 国产精品欧美久久| 亚洲第一色在线| 午夜在线视频观看日韩17c| 模特精品裸拍一区| 亚洲免费视频观看| 欧美日韩国产美| 尤妮丝一区二区裸体视频| 亚洲制服av| 亚洲精品中文字幕女同| 久久久国产亚洲精品| 国产精品久久久久久久久久ktv| 在线观看亚洲精品视频| 亚洲网站在线观看| 亚洲丰满在线| 久久久99国产精品免费| 国产精品日韩高清| 正在播放欧美一区| 亚洲国产中文字幕在线观看| 久久久久久电影| 国产视频在线观看一区二区| 亚洲网在线观看| 亚洲麻豆国产自偷在线| 免费不卡欧美自拍视频| 黄色成人在线| 久久女同互慰一区二区三区| 一级日韩一区在线观看| 欧美区一区二区三区| 亚洲人体一区| 欧美激情视频网站| 久久亚洲图片| 亚洲电影免费观看高清完整版在线观看 | 欧美一区午夜视频在线观看| 欧美久久综合| 亚洲精品免费电影| 欧美a级片网| 久久尤物视频| 91久久精品一区二区别| 欧美韩日亚洲| 欧美国产欧美亚州国产日韩mv天天看完整| 激情av一区| 欧美成人一区二区三区| 久久一区二区三区超碰国产精品| 国产伦精品一区二区三区四区免费| 欧美在线免费| 亚洲欧美成人综合| 国产一级精品aaaaa看| 久久久国产亚洲精品| 欧美在线观看天堂一区二区三区| 国产亚洲欧美日韩在线一区 | 亚洲一区久久| 亚洲免费一在线| 国产亚洲欧美一区二区三区| 久久网站免费| 欧美精品久久一区二区| 亚洲永久网站| 欧美影院一区| 亚洲精品自在久久| 亚洲色图制服丝袜| 黄色在线一区| 日韩香蕉视频| 国产亚洲视频在线观看| 麻豆国产精品一区二区三区 | 黄色欧美日韩| 亚洲乱码国产乱码精品精天堂 | 国产目拍亚洲精品99久久精品| 久久精品视频免费| 欧美成年人在线观看| 午夜电影亚洲| 另类欧美日韩国产在线| 亚洲午夜羞羞片| 久久九九国产| 亚洲一二三区在线| 久久久999精品视频| 一区二区三区日韩在线观看| 性色av香蕉一区二区| 日韩视频在线观看国产| 西西人体一区二区| 一区二区三区产品免费精品久久75 | 亚洲最新色图| 亚洲成人直播| 午夜精品一区二区三区电影天堂 | 蜜桃av综合| 欧美一站二站| 欧美久久在线| 亚洲国产精品黑人久久久| 国产精品乱码一区二区三区| 欧美福利电影在线观看| 国产日韩亚洲欧美精品| 日韩一区二区高清| 亚洲理论在线| 欧美~级网站不卡| 久久久久久久网| 国产目拍亚洲精品99久久精品| 99成人精品| 欧美激情网友自拍| 小处雏高清一区二区三区| 亚洲免费av片| 久久综合99re88久久爱| 久久久久久精| 国产午夜精品一区二区三区欧美| 中国女人久久久| 亚洲午夜精品福利| 欧美日韩精品三区| 亚洲精品男同| 亚洲免费激情| 欧美国产在线电影| 亚洲国产精品久久久久婷婷884| 激情综合视频| 久热爱精品视频线路一| 欧美freesex交免费视频| 精品999成人| 久久在线精品| 亚洲成在线观看| 亚洲免费大片| 欧美日韩视频在线第一区| 亚洲精品在线观看免费| 宅男噜噜噜66一区二区| 欧美日精品一区视频| 99视频超级精品| 亚洲一区二区不卡免费| 国产精品欧美风情| 性久久久久久久| 噜噜噜躁狠狠躁狠狠精品视频| 黄色成人av网| 久久综合给合久久狠狠色| 亚洲电影免费| 亚洲综合色视频| 国产一区二区三区自拍| 久久久久国产一区二区| 亚洲第一天堂av| 在线视频亚洲| 国产伦精品一区二区三区视频孕妇| 欧美一区影院| 亚洲欧洲日韩综合二区| 亚洲专区一区| 激情校园亚洲| 欧美日韩在线免费| 欧美在线播放视频| 欧美国产日韩一区二区三区| 这里只有精品电影| 国产一区自拍视频| 欧美v国产在线一区二区三区| 亚洲日本激情| 欧美一区二区三区四区在线| 亚洲高清一区二区三区| 欧美裸体一区二区三区| 午夜精品视频一区| 欧美激情影院| 欧美专区日韩专区| 99精品国产热久久91蜜凸| 国产精品九九久久久久久久| 久久精品免视看| 中文国产亚洲喷潮| 男女精品网站| 欧美影院一区| 9国产精品视频| 黄色成人在线网址| 国产精品日韩精品欧美精品| 欧美黄色一级视频| 欧美在线www| 亚洲中字在线| 亚洲人www| 欧美国产亚洲精品久久久8v| 欧美中文字幕| 亚洲欧美日本国产有色| 亚洲人成77777在线观看网| 欧美激情亚洲| 久久久久青草大香线综合精品| 制服丝袜激情欧洲亚洲| 亚洲人成绝费网站色www| 国产欧美日韩精品一区|