eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Ну, постривай!

Ну, постривай!

\includegraphics{https://static.e-olymp.com/content/1d/1d7d5946399a147b3b3af3868aee0cfb2c893a0a.jpg} Одного звичайного літього дня Заєць як завжди утікав від Вовка. І ось цього разу він добіг до довгого коридору з дверима і забіг в одні з них. Усі проходи через ці двері були дуже заплутані, але так сталось, що деякі з дверей можуть вести до однієї кімнати. Вовк не помітив, куди саме забіг Заєць, але бачив, що це були двері на проміжку від \textbf{l} до \textbf{r}. Для кожного проходу відомо, у яку кімнату він веде. Тепер Вовк називає число -- номер кімнати, і забігає у довільні двері, які ведуть до цієї кімнати (якщо такої немає, то Вовк залишається на місці). Ваша задача, обчислити яка ймовірність того, що Вовк попаде у ту ж кімнату, що і Заєць, якщо врахуватиь, що Заєць вибирав випадкові двері на проміжку від \textbf{l} до \textbf{r}. \InputFile У першому рядку знаходиться одне число \textbf{N} (\textbf{1} ≤ \textbf{N} ≤ \textbf{10^5}), кількість дверей у коридорі. Далі йде \textbf{N} чисел \textbf{A}_\{i \}(\textbf{0} ≤ \textbf{A_i} ≤ \textbf{10^9}) -- номери кімнат, у які веде кожен прохід відповідно. Потім йде число \textbf{М }(\textbf{1} ≤ \textbf{M }≤ \textbf{10^5}) -- кількість запитів одного з двох типів. Потім знаходиться \textbf{М} рядків, де якщо перше число у рядку рівне одиниці, то далі йде три числа \textbf{l}, \textbf{r}, \textbf{p} -- вказаний проміжок та номер кімнати, яку назвав Вовк. Якщо перше число було рівне двом, то далі йде два числа \textbf{l}, \textbf{r} і це означає, что тепер двері, які знаходяться на позиції \textbf{l} ведуть у кімнату \textbf{r}. \OutputFile Для кожного запиту з номером один виведіть відповідь до задачі. Результат виводьте у вигляді нескоротного дробу (див. приклад).
Ліміт часу 8 секунд
Ліміт використання пам'яті 128 MiB
Вхідні дані #1
6
1 2 3 1 2 3
5
1 1 6 2
2 1 2
1 1 6 2
1 1 1 1
1 2 2 2
Вихідні дані #1
1/3
1/2
0/1
1/1
Автор Олександр Бурков
Джерело Дистанційна Літня Комп`ютерна Школа - літо 2013 року