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

comiz

a problem of maze

Problem Statement

People enjoy mazes, but they also get them dirty. Arrows, graffiti, and chewing gum are just a few of the souvenirs people leave on the walls. You, the maze keeper, are assigned to whiten the maze walls. Each face of the wall requires one liter of paint, but you are only required to paint visible faces. You are given a map of the maze, and you must determine the amount of paint needed for the job.

The maze is described by a vector <string> maze, where each character can be either '#' (a wall) or '.' (an empty space). All '.' characters on the perimeter of the map are considered entrances to the maze. Upon entering the maze, one can only move horizontally and vertically through empty spaces, and areas that are not reachable by these movements are not considered visible. Each '#' represents a square block with four wall faces (each side of the square is a face). A face is visible if it is not directly adjacent to another wall (and is in a reachable area of the maze). For example, two adjacent blocks can have at most six visible faces since two of their faces are directly adjacent to each other. All exterior faces on the perimeter are considered visible.

For example, the following picture represents a trivial maze with just one (wide) entrance and only four empty reachable spaces:

 TroytownKeeper.png

To whiten this maze you must paint the faces highlighted in yellow above: 16 for its perimeter, plus 8 interior faces. Note that there are faces that are not visible and thus need not be painted.

Definition     

Class: TroytownKeeper

Method: limeLiters Parameters: vector <string>

Returns: int

Method signature: int limeLiters(vector <string> maze)

(be sure your method is public)     

Constraints

- maze will contain between 1 and 50 elements, inclusive.

- Each element of maze will contain between 1 and 50 characters, inclusive.

- All elements of maze will have the same number of characters.

- All characters in maze will be either '.' or '#' . Examples 0)  

 

   

{"##..#",
"#.#.#",
"#.#.#",
"#####"}
Returns: 24

posted on 2007-11-04 19:35 comiz 閱讀(421) 評論(1)  編輯 收藏 引用

評論

# re: a problem of maze 2007-11-04 19:35 comiz

using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Threading;

namespace TroytownKeeper
{

public class TroytownKeeper
{
string [] maze;
bool [,]used=new bool[100,100];
int sum=0;
public TroytownKeeper()
{



}

public int LimeLiters(string [] maze)
{
this.maze=maze;
for(int x=0;x<maze.GetLength(0);x++)
{
if(maze[x][0]=='.') dfs(x,0);
if(maze[x][maze[0].Length-1]=='.') dfs(x,maze[0].Length-1);
}
for(int y=0;y<maze[0].Length-1;y++)
{
if(maze[0][y]=='.') dfs(0,y);
if(maze[maze.GetLength(0)-1][y]=='.') dfs(maze.GetLength(0)-1,y);
}

for(int x=0;x<maze.GetLength(0);x++)
for(int y=0;y<maze[0].Length;y++)
if(maze[x][y]=='#')
{
//upside
if(x==0)
sum++;
if(x<maze.Length-1&&used[x+1,y])
sum++;
//leftside
if(y==0)
sum++;
if(y>0&&used[x,y-1])
sum++;
//underside
if(x==maze.Length-1)
sum++;
if(x>0&&used[x-1,y])
sum++;
//rightside
if(y==maze[0].Length-1)
sum++;
if(y<maze[0].Length-1&&used[x,y+1])
sum++;
}
return sum;
}

static void Main(string[] args)
{
TroytownKeeper TK=new TroytownKeeper();
string [] str={"##..#"
,"#.#.#"
,"#.#.#"
,"#####"};
int count=TK.LimeLiters(str);
Console.WriteLine(count.ToString());
}


void dfs(int x,int y)
{
used[x,y]=true;
if(x<maze.GetLength(0)&&maze[x+1][y]=='.'&&!used[x+1,y]) dfs(x+1,y);
if(y<maze[0].Length&&maze[x][y+1]=='.'&&!used[x,y+1]) dfs(x,y+1);
if(x>0&&maze[x-1][y]=='.'&&!used[x-1,y]) dfs(x-1,y);
if(y>0&&maze[x][y-1]=='.'&&!used[x,y-1]) dfs(x,y-1);
}
}
}

  回復  更多評論   

<2007年11月>
28293031123
45678910
11121314151617
18192021222324
2526272829301
2345678

導航

統計

常用鏈接

留言簿(1)

隨筆檔案

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            欧美一级大片在线观看| 香蕉久久精品日日躁夜夜躁| 欧美成人在线影院| 亚洲美女毛片| 在线午夜精品自拍| 国产日韩综合一区二区性色av| 欧美亚洲尤物久久| 久久久久免费观看| 9i看片成人免费高清| 夜夜夜精品看看| 国产综合久久久久久| 欧美国产亚洲另类动漫| 欧美日韩伊人| 免费不卡在线视频| 欧美日韩国产成人在线91| 欧美一区国产在线| 欧美成人免费大片| 欧美一级久久久久久久大片| 久久尤物电影视频在线观看| 一区二区三区精品视频| 欧美在线资源| 一区二区三区国产盗摄| 久久精品91| 亚洲婷婷国产精品电影人久久| 欧美一二三区精品| 中文在线不卡| 美女国产一区| 久久久久久久久伊人| 欧美日韩国产色综合一二三四| 久久久久久久尹人综合网亚洲| 欧美激情中文不卡| 另类亚洲自拍| 国产农村妇女毛片精品久久莱园子| 欧美国产精品v| 国产欧美日韩视频| 99综合在线| 亚洲三级色网| 久久久亚洲人| 欧美亚洲在线| 国产精品国产精品国产专区不蜜| 欧美国产第一页| 精品999在线播放| 亚洲欧美成人在线| 亚洲免费视频在线观看| 欧美精品一区二区三| 欧美电影在线观看| 激情久久久久久久久久久久久久久久| 一本到高清视频免费精品| 亚洲乱码日产精品bd| 免费成人网www| 欧美 日韩 国产在线| 黄色一区二区在线| 久久av一区二区三区| 欧美在线视频免费播放| 国产精品美女久久久浪潮软件| 亚洲人久久久| 亚洲破处大片| 欧美jjzz| 亚洲精品乱码久久久久久蜜桃91| 亚洲欧洲精品天堂一级| 久久在线91| 欧美激情视频一区二区三区免费| 尹人成人综合网| 久久蜜桃精品| 亚洲国产欧美在线人成| 亚洲激情视频在线观看| 欧美福利视频在线| 日韩一本二本av| 亚洲欧美日韩国产中文| 国产欧美精品国产国产专区| 亚洲欧美日韩区| 久久亚洲精品伦理| 亚洲国产毛片完整版| 欧美激情一区二区三区在线视频观看 | 亚洲高清免费在线| 美女精品网站| 亚洲精品欧美日韩| 亚洲欧美日韩精品久久| 国产婷婷一区二区| 久久综合激情| 亚洲精品视频二区| 欧美一区二区精品在线| 黑人巨大精品欧美一区二区| 欧美a级片一区| 亚洲视频导航| 久久人人爽人人爽爽久久| 亚洲三级免费| 国产精品午夜av在线| 久久久久久久久久久久久久一区| 亚洲第一毛片| 欧美一区二区三区免费在线看| 好看的日韩视频| 欧美日韩你懂的| 久久精品国产亚洲一区二区三区| 亚洲国产精品ⅴa在线观看| 亚洲欧美日韩国产综合| 伊人色综合久久天天五月婷| 欧美日韩mv| 久久精品视频亚洲| 99日韩精品| 欧美福利一区| 久久国产视频网| av成人天堂| 在线观看日韩欧美| 国产精品一区二区三区四区| 免费欧美在线视频| 欧美一级一区| 中文一区字幕| 亚洲国产一区二区三区青草影视| 久久精品99国产精品酒店日本| 日韩视频久久| 亚洲国语精品自产拍在线观看| 国产精品一区在线观看| 欧美理论电影网| 久久综合国产精品| 欧美在线观看网址综合| 亚洲视频久久| 亚洲精品日日夜夜| 亚洲福利视频三区| 欧美.www| 久久在线播放| 久久久久久久97| 欧美一区在线视频| 性欧美18~19sex高清播放| 这里是久久伊人| 亚洲精品欧洲| 亚洲日本欧美| 亚洲欧洲另类国产综合| 在线观看视频免费一区二区三区| 国产一级揄自揄精品视频| 国产精品美女久久久久久免费| 欧美日产国产成人免费图片| 欧美精品成人| 欧美激情无毛| 欧美精品一区三区| 欧美激情一区二区三区成人| 欧美大片在线观看一区| 欧美国产亚洲精品久久久8v| 欧美a级理论片| 蜜臀a∨国产成人精品| 美日韩丰满少妇在线观看| 六月婷婷一区| 欧美高清视频一区二区三区在线观看| 久久这里只有| 欧美国产精品久久| 欧美日韩国产经典色站一区二区三区| 欧美黑人多人双交| 欧美午夜精品久久久久久久| 欧美日韩一区二区三区高清| 国产精品99一区二区| 国产精品毛片一区二区三区| 国产日韩精品一区二区浪潮av| 国产婷婷一区二区| 在线观看不卡av| 日韩视频不卡中文| 亚洲欧美日本国产有色| 久久久久**毛片大全| 蜜臀a∨国产成人精品| 亚洲国产一二三| 中日韩视频在线观看| 久久gogo国模裸体人体| 免费欧美在线视频| 欧美性猛交一区二区三区精品| 国产乱码精品一区二区三区忘忧草| 国产欧美婷婷中文| 亚洲娇小video精品| 亚洲一区影音先锋| 老司机免费视频一区二区| 亚洲激情亚洲| 午夜精彩视频在线观看不卡 | 午夜精品久久| 麻豆免费精品视频| 欧美性猛交xxxx乱大交蜜桃| 激情av一区二区| 99精品热6080yy久久 | 一本一本大道香蕉久在线精品| 亚洲免费视频观看| 欧美激情精品久久久久久大尺度| aa成人免费视频| 看片网站欧美日韩| 国产精品嫩草影院一区二区 | 欧美三区在线| 亚洲高清视频的网址| 欧美亚洲一级| 亚洲精品乱码久久久久久蜜桃91| 欧美亚洲视频在线观看| 欧美日韩国产色综合一二三四| 黄色一区二区在线| 午夜一级在线看亚洲| 亚洲精品一区二区三区蜜桃久| 久久久欧美精品sm网站| 国产精品伦子伦免费视频| 亚洲精品社区| 欧美jizz19性欧美| 亚洲欧美成人综合| 国产精品成人v| 艳妇臀荡乳欲伦亚洲一区| 欧美福利一区二区| 久久亚洲免费| 一区在线免费观看|