QOJ.ac

QOJ

Time Limit: 10 s Memory Limit: 2048 MB Total points: 100

#8684. Dadu Telah Dilempar

Statistics

Kamu bermain dengan beberapa dadu enam sisi yang adil. Setiap sisi setiap dadu menampilkan satu simbol. Tujuannya adalah melempar dadu dan membentuk kata yang valid dari simbol pada sisi atas masing-masing dadu. Jika tidak dapat membentuk kata, kamu boleh melempar ulang untuk mencoba lagi.

problem_8684_e748ebe84691995c030c49e69ce185d3.png

Gambar K.1: Lima dadu membentuk kata valid yang sesuai dengan Contoh Masukan 1.

Misalkan ada lima dadu: satu berisi huruf A, B, C, D, E, dan P (disingkat ABCDEP), sedangkan dadu lainnya berisi AEHOXU, AISOLR, ABCDEF, dan ABCSCC. Lemparan pertama menghasilkan huruf pada sisi atas masing-masing dadu P, X, R, E, dan S. Karena huruf-huruf ini tidak dapat disusun menjadi kata valid, kamu menyimpan P, S, dan E serta melempar ulang dadu lainnya untuk mencoba membentuk PARSE, PAUSE, PHASE, POISE, PROSE, PULSE, atau PURSE. Kedua dadu menghasilkan E dan A, sehingga kini ada huruf P, E, A, E, dan S. Kamu masih tidak terpikir kata valid, jadi kamu menyimpan empat huruf dan hanya melempar ulang dadu terakhir, yang memiliki tiga sisi berhuruf C. Dengan begitu, ada peluang 50% untuk akhirnya membentuk kata valid PEACE, seperti Gambar K.1.

Saat sebuah dadu dilempar, setiap sisinya muncul dengan peluang yang sama. Berapa ekspektasi banyaknya lemparan yang diperlukan untuk membentuk kata valid jika menggunakan strategi optimal?

Masukan

Baris pertama berisi dua bilangan $d$ dan $w$, dengan $d$ ($1 \le d \le 6$) banyaknya dadu dan $w$ ($1 \le w \le 2 \cdot 10^5$) banyaknya kata valid dalam kamus. Masing-masing dari $d$ baris berikutnya memiliki 6 simbol, satu untuk setiap sisi dadu. $w$ baris terakhir memuat $w$ kata valid berbeda dalam kamus. Setiap kata memiliki tepat $d$ simbol.

Semua simbol dalam masukan adalah huruf kapital (A–Z) atau digit (0–9).

Keluaran

Jika kata valid dapat dibentuk, keluarkan ekspektasi banyaknya lemparan yang diperlukan dengan strategi optimal. Jika tidak, keluarkan impossible. Galat absolut atau relatif jawaban harus paling besar $10^{-6}$.

Contoh

Masukan 1

5 8
ABCDEP
AEHOXU
AISOLR
ABCDEF
ABCSCC
PARSE
PAUSE
PHASE
POISE
PROSE
PULSE
PURSE
PEACE

Keluaran 1

9.677887141

Masukan 2

2 1
AAAAAA
BBBBBB
AB

Keluaran 2

1.0

Masukan 3

3 1
123456
123456
123456
666

Keluaran 3

10.555444555

Masukan 4

2 1
ABCDEF
GHI234
AB

Keluaran 4

impossible

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.