COCI '08 Contest 5 #6 Kruska

View as PDF

Submit solution

Points: 10 (partial)
Time limit: 0.6s
Memory limit: 64M

Problem type
Allowed languages
Ada, Assembly, Awk, Brain****, C, C#, C++, COBOL, CommonLisp, D, Dart, F#, Forth, Fortran, Go, Groovy, Haskell, Intercal, Java, JS, Kotlin, Lisp, Lua, Nim, ObjC, OCaml, Octave, Pascal, Perl, PHP, Pike, Prolog, Python, Racket, Ruby, Rust, Scala, Scheme, Sed, Swift, TCL, Text, Turing, VB, Zig

Aladdin has become bored of life at the palace. He has a steady job, his wife Jasmine, kids are on the way and life is becoming monotonous. Prompted by all this, he has decided to have one more adventure before settling down.

He has decided to find the Golden Pear, an extremely valuable legendary artifact that no one has been able to find.

The desert Aladdin is searching is can be modeled as an N\times N grid of cells. Rows and columns are numbered 1 through N top to bottom and left to right. Some of the cells in the desert contain wizards that help Aladdin's quest in an unusual way.

Aladdin starts his quest in the top left corner of the desert on a Monday facing right. His movement involves repeating these steps:

  1. If the current cell contains a wizard that is awake, then Aladdin turns 90 degrees left or right, depending on what the wizard says.

  2. If moving forward would take Aladdin out of desert, he turns 180 degrees.

  3. Aladdin moves forward one cell and it takes him exactly one day.

For each wizard we know his location and his activity schedule for each day of the week. The schedule is a string of exactly seven letters L, R or S, each character telling us what the wizard does on one day of the week (starting with Monday). The letter L means that Aladdin will be told to turn left, R that Aladdin will be told to turn right, while S means the wizard sleeps that day.

An old prophecy says that after K changes in direction (in steps 1 and/or 2) Aladdin will find the Pear.

Write a program that calculates how many days the search will last, according to the ancient prophecy.

Input Specification

The first line contains two integers N and K (2 \leq N \leq 200, 1 \leq K \leq 1\,000\,000\,000), the size of the desert and the number of direction changes in the prophecy.

The second line contains an integer M (0 \leq M \leq 10\,000), the number of wizards. Each of the following M lines contains two integers R and C (1 \leq R, C \leq N), and a string of seven letters L, R or S. The numbers represent the row and column where the wizard is located, while the string is his schedule.

No two wizards will share the same cell, nor will there be a wizard in cell (1, 1).

Output Specification

Output the length of the search in days.

Scoring

In test cases worth 50\% of points, K will be at most 1000.

Sample Input 1

3 1
0

Sample Output 1

2

Sample Input 2

5 2
2
1 3 RRSRRRR
1 5 RRRRLRR

Sample Output 2

4

Sample Input 3

5 5
3
1 3 SSRSSSS
3 3 SSSLSSS
4 3 SSRSSLS

Sample Output 3

10

In the first example, Aladdin moves twice, reaching the edge of the desert. He then turns 180 degrees and finds the Pear.

In the second example, Aladdin reaches the first wizard on the third day, but the wizard is sleeping so Aladdin continues in the same direction. After two more days he reaches the other wizard who tells him to turn left. Aladdin does so, reaches the edge of the desert, turns back and finds the pair.


Comments

There are no comments at the moment.