eolymp
Competitions

European Girls' Olympiad in Informatics 2021, II Day

Подвійний хід

Аліса та Боб грають у гру, а Саманта їм допомагає. Є $n$ каменів, пронумерованих від $1$ до $n$. Гра складається з трьох фаз. На першому етапі Аліса та Боб роблять ходи по черзі. Аліса робить хід першою. На кожному ході гравець заявляє про свій намір взяти камінь, але замість того, щоб сказати, який саме, він називає два варіанти. Ці два варіанти можуть бути однаковими. Також можна назвати камені, які вже були названі в попередніх ходах. На першій фазі фактично не беруть каміння - гравці просто заявляють про свої наміри щодо другої фази. Перший етап закінчується, коли вже зробили $n+1$ тверджень. Ось приклад першої фази для $n=3$: \begin{enumerate} \item Аліса: <<Я візьму або камінь 1, або камінь 3>> \item Боб: <<Я візьму або камінь 2, або камінь 2>> \item Аліса: <<Я візьму або камінь 3, або камінь 2>> \item Боб: <<Я візьму або камінь 1, або камінь 3>> \end{enumerate} На другій фазі, для кожної з $n+1$ тверджень, які були зроблені, Саманта вибирає один із двох варіантів, кажучи <<перший>> або <<другий>>. Назвемо сценарієм кожну послідовність з $n+1$ варіантів, зроблених Самантою. Зверніть увагу, що існує рівно $2\cdot2\cdot2\cdot\cdots\cdot2=2^{n+1}$ можливих сценаріїв. (Навіть якщо в якомусь твердженні перший і другий варіанти однакові, ми розглядаємо можливість вибрати варіант <<перший>> або <<другий>>, щоб отримати різні сценарії.) Ось один із 16 сценаріїв, які Саманта могла вибрати у наведеному вище прикладі: \begin{enumerate} \item <<Перший>>: Аліса вибере перший камінь \item <<Перший>>: Боб вибере другий камінь \item <<Другий>>: Аліса вибере другий камінь \item <<Перший>>: Боб вибере перший камінь \end{enumerate} І на третьому етапі Аліса та Боб фактично починають брати каміння відповідно до рішень Саманти. Перший гравець, який не може зробити необхідний хід --- оскільки відповідний камінь уже взятий, програє гру. Зверніть увагу, що оскільки є $n$ каменів і $n+1$ ходів, один із гравців повинен врешті програти. У наведеному вище прикладі Аліса починає з того, що фактично візьме перший камінь. Боб потім візьме другий камінь. Алісі потрібно буде взяти другий камінь, проте його вже взяли. Тому Аліса програє, а Боб виграє. Вам дається число $n$ і стан гри в певний момент на першому етапі: послідовність з $k$ тверджень, які вже були зроблені. Ці заяви можуть бути абсолютно довільними. З цього моменту Аліса та Боб будуть грати в гру оптимально, як описано у наступному параграфі. Незалежно від того, як грають Аліса та Боб, Саманта однаково ймовірно вибере кожен із можливих сценаріїв із$2^{n+1}$. Аліса та Боб це знають, і тому, граючи оптимально, вони обидва намагаються мінімізувати кількість сценаріїв, в яких програють. Припустимо, Аліса та Боб будуть грати решту гри, як описано вище. Для кожного з двох гравців знайдіть кількість сценаріїв, в яких вони виграють гру. \InputFile Перший рядок містить два цілі числа $n$ та $k$ ($1\leq n\leq 35$, $0 \le k \le n+1$) --- кількість каменів та кількість тверджень, які вже зроблені. Наступні $k$ рядків описують твердження у тому порядку, у якому вони були зроблені. Кожен з наступних рядків містить два цілі числа --- номери каменів (обидва від $1$ до $n$ включно, вони не обов'язково різні). Зверніть увагу, що якщо $k < n + 1$, то наступний гравець, який зробить твердження, залежить від парності $k$. \OutputFile Виведіть два числа: кількість сценаріїв, в яких Аліса виграє, і кількість сценаріїв, в яких Боб виграє, припускаючи, що обидва гравці грають решту гри, як описано вище. Зверніть увагу, що сума двох виведених чисел повинна дорівнювати $2^{n+1}$. \Note Перший приклад відповідає прикладу з умови задачі. Твердження більше не потрібно робити, тому нам просто потрібно побачити, скільки можливих рішень Саманти призводить до перемоги Аліси, а скільки з них --- до перемоги Боба. Аліса виграє, якщо Саманта підбере їй $1$ на першому ході, і $3$ на другому ході, і програє у всіх інших випадках. У другому прикладі, якщо Аліса почне з твердження <<\t{1 1}>>, Боб продовжить <<\t{2 2}>>, то яке б твердження Аліса не зробила б на третьому ході - вона програє, оскільки Саманті доведеться вибрати перший камінь на першому ході й другий камінь на другому ході, і для третього ходу Аліси каміння не залишиться. Однак це не оптимальний перший крок для Аліси: натомість вона повинна почати з твердження <<\t{1 2}>>. Тоді, незалежно від того, що робить Боб на другому ході й що робить Аліса на третьому, кожен із них виграє у $4$ випадках із $8$. \Scoring Блок 1 (15 балів): $n \leq 4$. Блок 2 (34 бали): $n \leq 10$. Блок 3 (20 балів): $n \leq 25$. Блок 4 (10 балів): $k = 0$. Блок 5 (21 бал): без додаткових обмежень.
Time limit 7.5 seconds
Memory limit 256 MiB
Input example #1
3 4
1 3
2 2
3 2
1 3
Output example #1
4 12
Input example #2
2 0
Output example #2
4 4
Author Anton Tsypko