11208. Функція


Відправити розв'язок

Бали: 100
Time limit: 2.0s
Memory limit: 250M

Author:
Problem type
Allowed languages
C++, Java, Pascal, Python

Існує функція \(f(x)\), яка спочатку є сталою функцією \(f(x) = 0\).

Виконайте \(Q\) запитів.

Існує два типи запитів:

  • 1 \(a\) \(b\): задані два цілих числа \(a\) і \(b\), нехай \(g(x) = f(x) + ∣x−a∣ + b\) і замінити \(f (x)\) на \(g (x)\)

  • 2: вивести \(x\), що мінімізує \(f(x)\), і мінімальне значення \(f(x)\). Якщо таких значень \(x\) декілька, то виведіть мінімальне значення.

Можна довести, що значення, які виводяться в запиті на обчислення, завжди є цілими числами і тому їх слід виводити, як цілі числа.

Формат вхідних даних

Перший рядок вхідного потоку містить ціле число \(Q\) (\(1 \le Q \le 2 \times 10^5\))

Наступні \(Q\) рядків містять запити описаних типів.

Формат вихідних даних

Для кодного запиту 2 вивести \(x\) та \(f(x)\) відповідно до вимог. Числа розділяти пропуском.

Примітка

До прикладу 1:

У першому запиті оцінки \(f(x) = |x - 4| + 2\), що досягає мінімального значення 2 при \(x = 4\).

У другому запиті оцінки \(f(x) = |x - 1| + |x - 4| - 6\), що досягає мінімального значення -3, коли \(1 \leq x \leq 4\). Серед значень \(x\), які мінімізують \(f(x)\), виводимо мінімальне, тобто 1.

Приклад вхідних даних

4
1 4 2
2
1 1 -8
2

Приклад вихідних даних

4 2
1 -3

Приклад вхідних даних

4
1 -1000000000 1000000000
1 -1000000000 1000000000
1 -1000000000 1000000000
2

Приклад вихідних даних

-1000000000 3000000000

Коментарі

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