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

            superman

            聚精會神搞建設 一心一意謀發展
            posts - 190, comments - 17, trackbacks - 0, articles - 0
               :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            ZOJ 2803 - Crashing Robots

            Posted on 2008-05-26 10:41 superman 閱讀(251) 評論(0)  編輯 收藏 引用 所屬分類: ZOJ
             1 /* Accepted 2803 C++ 00:00.02 880K */
             2 #include <iostream>
             3 
             4 using namespace std;
             5 
             6 int main()
             7 {
             8     int N;
             9     cin >> N;
            10     while(N--)
            11     {
            12         int a, b, n, m;
            13         
            14         int px[101];
            15         int py[101];
            16         int dir[101];
            17         
            18         int map[101][101= { 0 };
            19         
            20         cin >> a >> b >> n >> m;
            21         for(int i = 1; i <= n; i++)
            22         {
            23             char c;
            24             cin >> px[i] >> py[i] >> c;
            25             map[px[i]][py[i]] = i;
            26             switch(c)
            27             {
            28                 case 'N' : dir[i] = 0break;
            29                 case 'E' : dir[i] = 1break;
            30                 case 'S' : dir[i] = 2break;
            31                 case 'W' : dir[i] = 3break;
            32             }
            33         }
            34         
            35         bool ok = true;
            36         for(int i = 0; i < m; i++)
            37         {
            38             int robot; char action; int repeat;
            39             
            40             cin >> robot >> action >> repeat;
            41          
            42             if(ok == false)
            43                 continue;
            44             
            45             if(action == 'L' || action == 'R')
            46             {
            47                 repeat %= 4;
            48                 if(action == 'L')
            49                     dir[robot] = (dir[robot] - repeat + 4% 4;
            50                 if(action == 'R')
            51                     dir[robot] = (dir[robot] + repeat) % 4;
            52                 continue;
            53             }
            54             //action == 'F'
            55             while(repeat--)
            56             {
            57                 int x = px[robot];
            58                 int y = py[robot];
            59                 
            60                 map[x][y] = 0;
            61                 switch(dir[robot])
            62                 {
            63                     case 0 : y++break;
            64                     case 1 : x++break;
            65                     case 2 : y--break;
            66                     case 3 : x--break;
            67                 }
            68                 if(map[x][y])
            69                 {
            70                     cout << "Robot " << robot
            71                          << " crashes into robot " << map[x][y] << endl;
            72                     break;
            73                 }
            74                 if(x == 0 || x == a + 1 || y == 0 || y == b + 1)
            75                 {
            76                     cout << "Robot " << robot << " crashes into the wall" << endl;
            77                     break;
            78                 }
            79                 px[robot] = x;
            80                 py[robot] = y;
            81                 map[x][y] = robot;
            82             }
            83             if(repeat != -1)
            84                 ok = false;
            85         }
            86         if(ok)
            87             cout << "OK" << endl;
            88     }
            89     
            90     return 0;
            91 }
            92 
            色99久久久久高潮综合影院| 久久久久无码精品国产| 久久国产精品波多野结衣AV| 精品欧美一区二区三区久久久| 久久久久久极精品久久久| 99久久国产精品免费一区二区| 无码日韩人妻精品久久蜜桃| 免费观看久久精彩视频| 一本色道久久88综合日韩精品 | 久久亚洲中文字幕精品有坂深雪| 97久久精品国产精品青草| 人妻少妇精品久久| 国内精品久久久久影院优| 久久无码国产| 久久久久久狠狠丁香| 亚洲国产精品无码成人片久久| 亚洲一区二区三区日本久久九| 久久夜色精品国产噜噜亚洲a| 国产成人综合久久综合| 久久精品中文字幕一区| 久久国产热这里只有精品| 好属妞这里只有精品久久| 亚洲综合伊人久久大杳蕉| 久久午夜综合久久| 精品多毛少妇人妻AV免费久久| 久久精品欧美日韩精品| 一本色道久久99一综合| 免费久久人人爽人人爽av| 免费一级做a爰片久久毛片潮| 久久AⅤ人妻少妇嫩草影院| 久久青草国产手机看片福利盒子| 久久久久女人精品毛片| 欧美一区二区三区久久综合| 久久精品青青草原伊人| 一本久久综合亚洲鲁鲁五月天亚洲欧美一区二区 | 久久精品国产99久久无毒不卡| 国产精品久久久久免费a∨| 人妻精品久久久久中文字幕| 久久久中文字幕日本| 久久夜色撩人精品国产| 久久国产视屏|