Logo
(追記) (追記ここまで)

18535번 - Tomb Raider 다국어

시간 제한메모리 제한제출정답맞힌 사람정답 비율
3 초 (추가 시간 없음) 512 MB56242246.809%

문제

Hu the Tomb Raider has entered a new tomb! It is full of gargoyles, mirrors, and obstacles. There is a door, with treasure beyond. Hu must unlock the door guarding the treasure. On that door is written, in an ancient tongue, the secret to opening the door:

Every face of every gargoyle shall see a face of a gargoyle.

This means that the gargoyles must be rotated in such a way that there is a path for a beam of light to connect each gargoyle’s face to another gargoyle’s face (possibly of its own). The beam of light may reflect in mirrors.

The floorplan of the tomb can be described as a rectangular n×m grid of cells:

  • A Dot (‘.’) represents an empty cell.
  • A Hash (‘#’) represents an obstacle.
  • A Slash (‘/’) represents a double-sided mirror, as does a Backslash (‘\’) .
  • A character ‘V’ represents a gargoyle with two faces facing top and bottom.
  • A character ‘H’ represents a gargoyle with two faces facing left and right.

In addition to the ‘\’ and ‘/’ mirrors, the tomb is surrounded by walls of mirrors. The following common sense about light is assumed:

  1. Light travels in a straight line through empty cells.
  2. Two beams of light can intersect without interfering with each other.
  3. A ‘\’ mirror reflects light coming from the top/bottom/left/right to the right/left/bottom/top. A ‘/’ mirror reflects light coming from the top/bottom/left/right to the left/right/top/bottom.
  4. Light is reflected by 180 degrees when it hits a wall (walls are all mirrors).
  5. Light is blocked by obstacles and gargoyles.

Hu may rotate any gargoyle by 90 degrees. As time is running short, he wants to know the minimum number of gargoyles that have to be rotated in order to unlock the treasure door.

입력

The first line of input contains two space-separated integers n and m (1 ≤ n, m ≤ 500), which are the dimensions of the tomb.

Each of the next n lines contains a string s (|s| = m) with the characters described above. This is the floorplan of the tomb.

출력

Output a single integer, which is the minimum number of gargoyles that have to be rotated in order to unlock the treasure door. If the puzzle has no solution, output −1.

제한

예제 입력 1

5 5
/.V.\
./.V.
..#..
.V.#.
\.V./

예제 출력 1

3

예제 입력 2

2 5
V...\
H...V

예제 출력 2

-1

예제 입력 3

2 2
VV
VV

예제 출력 3

0

힌트

The above are illustrations of Sample Input/Output 1 with the initial configuration on the left, and the solution of the puzzle on the right. Three gargoyles are rotated to solve the puzzle.

출처

ICPC > Regionals > North America > North America Championship > North America Championship 2020 L번

Contest > Open Cup > 2019/2020 Season > Stage 13: Grand Prix of America L번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /