e-olymp
favorite We need a little bit of your help to keep things running, click on this banner to learn more
Competitions

Ukrainian Olympiad in Informatics, II Stage, II Round

B. Нагорода за голови

Віталій полюбляє грати в азартні ігри. У його улюблену гру грає $n$ людей. Гравці пронумеровані від $1$ до $n$. У кожного гравця є два баланси: перший~--- його виграш, другий~--- нагорода за його голову. Спочатку у кожного гравця виграш~--- $0$, а нагорода за голову~--- $1$. У грі відбувається рівно $n-1$ послідовних подій такого виду: береться два різні гравці, які ще не вибули з гри, і перший з них вибиває другого. У результаті цієї операції до виграшу першого додається нагорода за голову другого, а до нагороди за голову першого додається половина нагороди за голову другого. Другий гравець вибуває з гри, тобто він вже не може нікого вибивати та бути знову вибитим кимось. Вам потрібно знайти послідовність подій, таких, щоб сумарний виграш усіх гравців був мінімально (або максимально) можливий. \InputFile Перший рядок містить два цілі числа $n$ та $t$ ($2 \le n \le 10^5, 0 \le t \le 1$)~--- кількість гравців та число, яке вказує для мінімального чи максимального виграшу ви розв'язуєте задачу. Число $0$ відповідає задачі для мінімального виграшу, $1$~--- для максимального. \OutputFile Виведіть $n-1$ рядків. В $i$-ому рядку повинно бути два цілі числа $a_i$ та $b_i$ ($1 \leq a_i, b_i \leq n$), це означає, що гравець під номером $a_i$ вибив гравця $b_i$ на кроці $i$. \Note Розберемо перший приклад. Баланси гравців на кожному кроці: \begin{enumerate} \item Баланси на початку: $(0, 1), (0, 1), (0, 1)$. \item Баланси після першого кроку: $(0, 1), (1, 1.5), (0, 1)$. \item Баланси після другого кроку: $(0, 1), (2, 2), (0, 1)$. \end{enumerate} Сумарний виграш гравців: $2+0+0=2$ Розберемо другий приклад. Баланси гравців на кожному кроці: \begin{enumerate} \item Баланси на початку: $(0, 1), (0, 1), (0, 1)$. \item Баланси після першого кроку: $(0, 1), (0, 1), (1, 1.5)$. \item Баланси після другого кроку: $(0, 1), (1.5, 1.75), (1, 1.5)$. \end{enumerate} Сумарний виграш гравців: $1+0+1.5=2.5$ \Scoring У $50\%$ тестів $t=0$. У інших $50\%$ тестів $t=1$.
Time limit 1 second
Memory limit 256 MiB
Input example #1
3 0
Output example #1
2 3
2 1
Input example #2
3 1
Output example #2
3 1
2 3
Author Mykhailo Perekopskyi
Source Ukrainian Olympiad in Informatics 2021, II Stage