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

ArcTan

dfs
隨筆 - 16, 文章 - 117, 評論 - 6, 引用 - 0
數據加載中……

SRM 500 DIV2 500PT(模擬)

Problem Statement

     NOTE: This problem statement contains images that may not display properly if viewed outside of the applet.

We had a rectangular grid that consisted of W x H square cells. We placed a robot on one of the cells. The robot then followed the rules given below.
  • Initially, the robot is facing east.
  • The robot moves in steps. In each step it moves to the adjacent cell in the direction it currently faces.
  • The robot may not leave the grid.
  • The robot may not visit the same cell twice. (This also means that it may not reenter the starting cell.)
  • If a step forward does not cause the robot to break the above rules, the robot takes the step.
  • Otherwise, the robot rotates 90 degrees to the left (counter-clockwise) and checks whether a step forward still breaks the above rules. If not, the robot takes the step and continues executing this program (still rotated in the new direction).
  • If the rotation left did not help, the robot terminates the execution of this program.
  • We can also terminate the execution of the program manually, at any moment.
For example, the following seven images show a series of moves made by the robot in a 12 x 11 board:



We forgot the dimensions of the grid and the original (x,y) coordinates of the cell on which the robot was originally placed, but we do remember its movement. You are given a vector <int> moves. This sequence of positive integers shall be interpreted as follows: The robot performed moves[0] steps eastwards, turned left, performed moves[1] steps northwards, turned left, and so on. After performing the last sequence of steps, the robot stopped. (Either it detected that it should terminate, or we stopped it manually.) We are not sure if the sequence of moves is valid. If the sequence of moves is impossible, return -1. Else, return the minimum area of a grid in which the sequence of moves is possible. (I.e., the return value is the smallest possible value of the product of W and H.).

Definition

    
Class: RotatingBot
Method: minArea
Parameters: vector <int>
Returns: int
Method signature: int minArea(vector <int> moves)
(be sure your method is public)
    

Constraints

- moves will contain between 1 and 50 elements, inclusive.
- Each element of moves will be between 1 and 50, inclusive.

Examples

0)
    
{15}
Returns: 16
The smallest valid board is a 16x1 board, with the robot starting on the west end of the board.
1)
    
{3,10}
Returns: 44
The smallest solution is to place the robot into the southwest corner of a 4 x 11 board.
2)
    
{1,1,1,1}
Returns: -1
This sequence of moves is not possible because the robot would return to its initial location which is forbidden.
3)
    
{9,5,11,10,11,4,10}
Returns: 132
These moves match the image from the problem statement.
4)
    
{12,1,27,14,27,12,26,11,25,10,24,9,23,8,22,7,21,6,20,5,19,4,18,3,17,2,16,1,15}
Returns: 420

5)
    
{8,6,6,1}
Returns: -1

6)
    
{8,6,6}
Returns: 63

7)
    
{5,4,5,3,3}
Returns: 30

This problem statement is the exclusive and proprietary property of TopCoder, Inc. Any unauthorized use or reproduction of this information without the prior written consent of TopCoder, Inc. is strictly prohibited. (c)2003, TopCoder, Inc. All rights reserved.



模擬題目,直接按照給定序列遍歷,如果遇到不合法的情況return -1。設定四個方向,mw,me,mn,ms,東北西南,初始為上下界。然后依次找到范圍。
初始點(100,100)。
最后的面積為(me-mw+1)*(ms-mn+1)

沒有考慮完全啊,思維還是不嚴謹不完整,就WA了一組數據,昨晚做就悲劇了!!!!
我是弱菜,繼續努力!

不錯的模擬題目,需要考慮的東西很多!
#include <cstdio>
#include 
<cstdlib>
#include 
<cstring>
#include 
<cmath>
#include 
<ctime>
#include 
<cassert>
#include 
<iostream>
#include 
<sstream>
#include 
<fstream>
#include 
<map>
#include 
<set>
#include 
<vector>
#include 
<queue>
#include 
<algorithm>
#define min(x,y) (x<y?x:y)
#define max(x,y) (x>y?x:y)
#define swap(t,x,y) (t=x,x=y,y=t)
#define clr(list) memset(list,0,sizeof(list))

using namespace std;
bool maps[205][205];
int go[4][2]={{1,0},{0,-1},{-1,0},{0,1}};
class RotatingBot{
public:
    
int minArea(vector <int> moves){
        
int n=moves.size();
        
int me=1000,mw=0,mn=0,ms=1000;
        
int tmp;
        
int dir;
        
int x,y,xx,yy;
        clr(maps);
        maps[
100][100]=1;
        x
=100,y=100,dir=0;
        
for (int i=0;i<n ;i++)
        {
            tmp
=moves[i];
            
for (int j=0;j<tmp;j++)
            {
                xx
=x+go[dir][0];yy=y+go[dir][1];
                
if (maps[xx][yy] || (xx<mw || xx>me || yy<mn || yy>ms))
                    
return -1;
                
else
                {
                    maps[xx][yy]
=1;
                    x
=xx;y=yy;
                }
            }
            xx
=x+go[dir][0];yy=y+go[dir][1];
            
if (!maps[xx][yy])
            {
                
if (dir==0)
                    
if (me==1000)
                        me
=x;
                    
else
                        
if (x<me && i<n-1)
                            
return -1;
                
if (dir==1)
                    
if (mn==0)
                        mn
=y;
                    
else if (y>mn && i<n-1)
                        
return -1;
                
if (dir==2)       //這里WA了testing 5 & 6
                    
if (mw==0 && x<=100)
                        mw
=x;
                    
else
                        
if (x>mw && i<n-1)
                            
return -1;
                
if (dir==3)            //最后栽在這里了
                    
if (ms==1000 && y>=100)  
                        ms
=y;
                    
else if ((y<ms || y<100&& i<n-1)
                        
return -1;
            }
            dir
=(dir+1% 4;
        }
     
//   return mw;
        if (mw==0)
            mw
=100;
        
if (mn==0)
            mn
=100;
        
if (ms==1000)
            ms
=100;
        
return (me-mw+1)*(ms-mn+1);
    }
};

posted on 2012-07-22 10:10 wangs 閱讀(232) 評論(0)  編輯 收藏 引用 所屬分類: Topcoder

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美精品激情| 久久久久久久久久久久久女国产乱 | 日韩一二三在线视频播| 老牛影视一区二区三区| 欧美一级成年大片在线观看| 国产精自产拍久久久久久| 亚洲一区综合| 久久精品电影| 亚洲精品免费在线播放| 亚洲精品久久久久久下一站 | 国产精品亚洲аv天堂网| 亚洲一区欧美二区| 欧美在线免费看| 日韩一区二区精品葵司在线| 亚洲最新视频在线| 国产一区二区三区四区三区四| 老司机久久99久久精品播放免费| 久久嫩草精品久久久久| 日韩一区二区精品视频| 欧美一区二区视频在线观看2020| 黄色精品一区| 亚洲欧美欧美一区二区三区| 一区二区三区视频在线播放| 亚洲精品一二| 欧美成人亚洲成人| 国产色综合网| 欧美风情在线| 欧美在线播放一区二区| 国产精品人人爽人人做我的可爱| 欧美专区福利在线| 欧美午夜精品久久久久久孕妇 | 亚洲专区一区| 日韩视频免费观看高清在线视频| 亚洲无吗在线| 午夜精品福利视频| 国产精品国产三级欧美二区| 亚洲成在线观看| 国产精品www色诱视频| 噜噜噜91成人网| 国产精品多人| 亚洲综合日韩| 老司机精品久久| 激情另类综合| 欧美www视频| 亚洲精品中文字幕有码专区| 亚洲精品欧美极品| 欧美午夜宅男影院| 欧美一二区视频| 免费影视亚洲| 国产精品99久久久久久人| 欧美日韩国产页| 欧美一级久久| 欧美国产激情| 久久久国产午夜精品| 亚洲国产清纯| 国产欧美在线观看一区| 欧美大片国产精品| 久久精品99无色码中文字幕| 亚洲高清激情| 久久伊人一区二区| 午夜亚洲视频| 日韩视频第一页| 在线播放一区| 女女同性精品视频| 国产精品国产三级国产专区53 | 亚洲一区在线免费| 国产精品久久久久久妇女6080| 一区二区三区**美女毛片| 国产精品扒开腿做爽爽爽软件| 欧美黑人多人双交| 99国产成+人+综合+亚洲欧美| 欧美精品激情在线观看| 亚洲日韩中文字幕在线播放| 久久婷婷色综合| 欧美激情精品久久久久久蜜臀| 久久久久久网址| 一区二区三区产品免费精品久久75 | 久久爱www久久做| 亚洲精品乱码久久久久久蜜桃91| 最新亚洲激情| 国产精品一区毛片| 欧美成人午夜| 欧美激情精品久久久久久免费印度 | 亚洲精品之草原avav久久| 欧美在线一二三四区| 亚洲激情第一页| 欧美成人在线网站| 午夜精品一区二区三区电影天堂| 亚洲国产婷婷综合在线精品 | 日韩一级视频免费观看在线| 午夜精品久久久久久久99黑人| 亚洲激情二区| 日韩天堂在线观看| 亚洲一二三区精品| 亚洲欧美综合精品久久成人| 国产精品视频内| 国产精品自拍视频| 国产日韩欧美| 一区在线观看视频| 亚洲国产欧美在线| 亚洲综合成人婷婷小说| 亚洲一区二区三区免费观看| 亚洲视频在线看| 欧美在线免费观看视频| 久久这里只有精品视频首页| 免费高清在线一区| 亚洲黄色毛片| 在线一区观看| 午夜电影亚洲| 欧美激情一区二区三区高清视频| 一区二区高清视频在线观看| 久久久久久**毛片大全| 一区二区三区视频在线播放| 红桃视频欧美| 国产一区二区三区最好精华液| 欧美激情1区2区| 国产精品二区二区三区| 一本久久综合亚洲鲁鲁五月天| 国产精品视频xxx| 国外成人性视频| 亚洲国产视频a| 亚洲综合色丁香婷婷六月图片| 亚洲国产精品成人一区二区 | 亚洲一区二区三区欧美| 久久国产精品黑丝| 欧美在线观看视频在线 | 欧美日精品一区视频| 一本一本a久久| 久久不射网站| 国产精品xxxxx| 99伊人成综合| 亚洲国产高潮在线观看| 久久九九全国免费精品观看| 亚洲视频一区二区| 欧美日韩天天操| 国内成+人亚洲| 久久全国免费视频| 午夜精品久久久久影视| 国产精品一区久久| 亚洲欧美日本精品| 欧美一区二区黄色| 一区二区欧美日韩视频| 99日韩精品| 国产精品成人在线| 亚洲一级二级在线| 亚洲欧美久久久| 国产亚洲欧美在线| 欧美性猛交99久久久久99按摩| 一区二区三区av| 一区二区欧美日韩| 欧美伦理视频网站| 老司机午夜精品| 欧美好骚综合网| 性亚洲最疯狂xxxx高清| 欧美成年人网站| 国产精品亚洲成人| 免费亚洲一区| 国产综合18久久久久久| 一区二区福利| 国产精品推荐精品| 亚洲第一色在线| 欧美日韩大片一区二区三区| 欧美一区二区三区四区夜夜大片| 久久综合伊人77777| 久热re这里精品视频在线6| 欧美三级日本三级少妇99| 免费黄网站欧美| 国产自产女人91一区在线观看| 亚洲精品中文字幕在线| 亚洲国产日韩在线| 快射av在线播放一区| 久久精品午夜| 国产美女精品人人做人人爽| 久久久久免费| 91久久精品久久国产性色也91| 欧美日韩一区二区三区在线 | 欧美日韩伦理在线免费| 亚洲欧美日韩国产| 亚洲国产欧美在线| 久久精品中文字幕一区二区三区 | 久久精品视频免费| 在线中文字幕日韩| 亚洲国产精品v| 亚洲激情在线观看视频免费| 国产婷婷一区二区| 国产精品入口日韩视频大尺度 | 一区二区三区在线视频免费观看 | 欧美日韩免费看| 美女久久一区| 蜜桃精品久久久久久久免费影院| 欧美影院成人| 欧美与欧洲交xxxx免费观看| 宅男66日本亚洲欧美视频| 最新国产成人在线观看| 欧美刺激性大交免费视频| 亚洲国产精品传媒在线观看| 欧美高清自拍一区| 亚洲天堂视频在线观看| 亚洲综合色自拍一区| 欧美一区二区视频在线观看2020|