Домінування — 3D

Перегляд у форматі PDF

Надіслати розв'язок

Бали: 3,00 (partial)
Time limit: 1.0s
Memory limit: 256M
Input: stdin
Output: stdout

Problem type

Розглянемо узагальнення біматричної гри на трьох гравців: щодо кожного з трьох гравців задано, які стратегії йому доступні, і для кожного гравця є свій тривимірний масив: елемент a[i][j][k] масиву a виражає виграш першого гравця за умови, що перший гравець вибрав стратегію номер i, другий гравець стратегію номер j, третій гравець стратегію номер k; елемент b[i][j][k] масиву b виражає виграш другого гравця за тих самих умов, а елемент с[i][j][k] масиву c – виграш третього. (Всього є три тривимірні масиви однакових розмірів, аналогічно тому, як у класичних біматричних іграх є дві матриці однакових розмірів.)

Напишіть програму, яка за вказаними тривимірними масивами виграшів визначить, в яких парах стратегій кожного з гравців одна домінує іншу.

Вхідні дані

У першому рядку через пропуски (пробіли) задано кількість стратегій першого гравця ~N~ (~2 \leqslant N \leqslant 8~), кількість стратегій другого гравця ~M~ (~2 \leqslant M \leqslant 8~) та кількість стратегій третього гравця ~K~ (~2 \leqslant K \leqslant 8~). Далі йде один порожній рядок. Наступні ~{M\cdot{}K}{{+}}{(M-1)}~ рядків містять масив виграшів першого гравця, у вигляді: спочатку рівно ~M~ рядків по рівно ~K~ чисел, розділених одинарними пропусками (пробілами), причому ~j~-е число ~i~-го рядка являє собою виграш першого гравця у випадку, якщо перший гравець застосує стратегію №1, другий стратегію №i, а третій стратегію №j. Далі йде один порожній рядок, після якого задані ще рівно ~M~ рядків по рівно ~K~ чисел, розділених одинарними пропусками (пробілами), де ~j~-е число ~i~-го рядка являє собою виграш першого гравця у випадку, якщо перший гравець застосує стратегію №2, другий стратегію №~i~, а третій стратегію №~j~; і так далі. Після вичерпання всіх ~{M\cdot{}K}{{+}}{(M-1)}~ рядків (з яких ~{M\cdot{}K}~ непорожніх та ~{M{-}1}~ порожніх) слідують три підряд порожні рядки, а після них в аналогічному форматі задано тривимірний масив виграшів другого гравця. Потім слідують ще три підряд порожні рядки, а після них в аналогічному форматі задано тривимірний масив виграшів третього гравця. Всі значення елементів усіх масивів є цілими числами, що не перевищують за модулем (абсолютною величиною) 999.

Результати

Ваша програма повинна вивести спочатку в окремому рядку фразу «1st player» (без лапок), потім всі можливі пари стратегій ~i,\,j~ (при ~i{\neq}j~) першого гравця, де ~i~-а стратегія домінує ~j~-у стратегію. Якщо домінування строге, то фраза в окремому рядку повинна мати вигляд «i strictly dominates j»; якщо строгого домінування нема, але є слабке домінування, то фраза в окремому рядку повинна мати вигляд «i weakly dominates j». Виводити слід без лапок, а замість i та j треба виводити конкретні числа-номери стратегій (вважаючи, що нумерація починається з 1). Всі ці фрази повинні бути відсортовані за зростанням ~i~, а при однакових ~i~ – за зростанням ~j~.

Потім слід вивести окремим рядком фразу «2nd player» (без лапок), а після неї – аналогічні, в такому ж форматі, результати порівнянь стратегій другого гравця.

Потім слід вивести окремим рядком фразу «3rd player» (без лапок), а після неї – аналогічні, в такому ж форматі, результати порівнянь стратегій третього гравця.

Приклади

Вхід

2 2 2

2 2
3 3

1 0
1 2



1 3
1 3

0 2
0 2



0 3
0 1

2 0
0 0

Результат

1st player
1 strictly dominates 2
2nd player
1 weakly dominates 2
2 weakly dominates 1
3rd player

Примітки

Якщо 1-ий гравець вибирає свою 1-шу стратегію, то:

  • в разі вибору 1-ої стратегії 2-им гравцем і 1-ої стратегії 3-им гравцем 1-ий отримує 2 (замість 1, якби вибрав 2-гу стратегію);
  • в разі вибору 1-ої стратегії 2-им гравцем і 2-ої стратегії 3-им гравцем 1-ий отримує 2 (замість 0, якби вибрав 2-гу стратегію);
  • в разі вибору 2-ої стратегії 2-им гравцем і 1-ої стратегії 3-им гравцем 1-ий отримує 3 (замість 1, якби вибрав 2-гу стратегію);
  • в разі вибору 2-ої стратегії 2-им гравцем і 2-ої стратегії 3-им гравцем 1-ий отримує 3 (замість 2, якби вибрав 2-гу стратегію).

Таким чином, 1-ша стратегія строго домінує 2-гу.

Другому гравцеві зміна стратегії ніколи не змінює величину виграшу:

  • в разі вибору 1-ої стратегії 1-им гравцем і 1-ої стратегії 3-ім гравцем, 2-ий незалежно від свого вибору отримує 1;
  • в разі вибору 1-ої стратегії 1-им гравцем і 2-ої стратегії 3-ім гравцем, 2-ий незалежно від свого вибору отримує 3;
  • в разі вибору 1-ої стратегії 1-им гравцем і 1-ої стратегії 3-ім гравцем, 2-ий незалежно від свого вибору отримує 0;
  • в разі вибору 1-ої стратегії 1-им гравцем і 2-ої стратегії 3-ім гравцем, 2-ий незалежно від свого вибору отримує 2.

Таким чином, формально виходить взаємне слабке домінування стратегій одна одною, хоча водночас це більш схоже на рівність (рівноцінність).

Для 3-го гравця, ніяка стратегія не домінує іншу ні строго, ні слабко, бо, наприклад, в разі вибору 1-ої стратегії 1-им гравцем і 1-ої стратегії 2-им гравцем, 3-му вигідніше вибрати свою 2-гу стратегію й отримати 3, ніж вибрати свою 1-шу стратегію й отримати 0; але, водночас, в разі вибору 2-ої стратегії 1-им гравцем і 1-ої стратегії 2-им гравцем, 3-му вигідніше вибрати свою 1-шу стратегію й отримати 2, ніж вибрати свою 2-гу стратегію й отримати 0. Тобто, в одних ситуаціях строго більший виграш дає одна стратегія, а в інших – інша.


Коментарі

Please read the guidelines before commenting.


Ще немає коментарів.