В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
mikerinavera
mikerinavera
30.03.2021 01:10 •  Информатика

Мы рады летним теплым дням – а вы? понежиться под знойным солнышком, поплескаться в освежающей морской воде, почитать книжку, поиграть в пляжный звучит здорово, правда? но что делать, если вам наскучили все эти занятия? от скуки феодосий начал строить песочные куличики. строить куличики он начал от береговой линии, продвигаясь вглубь пляжа. феодосий решил нумеровать куличики в порядке постройки, начиная с нуля. так, нулевой куличик стоял у самой воды, первый – чуть дальше от моря, второй – ещё дальше и так далее.

феодосий считает, что куличик получился удачным, если его высота не меньше x. высоту i-го куличика он описывал целым неотрицательным числом hi.

мальчик уже слепил n куличиков. и тут оказалось, что он не учёл, что уровень воды в море может измениться даже за короткий промежуток времени. прилив размывал один песочный куличик за другим в том порядке, в котором они были построены.

теперь, продолжая строить куличики, феодосий придумал себе следующее занятие: в некоторые моменты времени он выбирает один куличик и считает, сколько удачных куличиков осталось перед ним. это занятие уже показалось ему интересным, и он решил придумать, как можно автоматизировать подсчёты. так как сам феодосий силён в построении куличиков, а не в программировании, поэтому в решении этой он попросил у вас.

входные данные
в первой строке входного файла даны два числа: n – начальное количество построенных куличиков (1≤n≤106) и x – нижняя граница высоты удачного куличика (0≤x≤109).

в следующей строке даны n чисел hi – высота i-го куличика (0≤hi≤109).

в третьей строке входного файла дано число m (1≤m≤105) – количество событий, которые происходили с рядом куличиков.

в следующих m строках дано описание событий:

1 h (0≤h≤109) – феодосий строит новый куличик высоты h.

2 – вода разрушает самый ближний к морю куличик, который в нумерации феодосия имеет номер 0. после этого феодосий мысленно уменьшает номера всех куличиков на 1.

3 i – феодосий хочет узнать, сколько удачных куличиков осталось между куличиком с номером i и линией моря.

гарантируется, что все запросы корректны: если на берегу нет ни одного куличика, то операция второго типа не выполняется, а при запросе третьего типа количество куличиков всегда будет строго больше i.

выходные данные
на каждый запрос третьего типа в отдельной строке выведите одно число – количество удачных куличиков, которые стоят перед куличиком с данным номером.

примеры
входные данные
1 2
3
5
1 2
1 1
3 0
3 1
3 2
выходные данные
0
1
2
входные данные
2 2
1 2
7
3 0
3 1
2
3 0
1 3
3 0
3 1
выходные данные
0
0
0
0
1

Показать ответ
Ответ:
Vlad010934
Vlad010934
08.04.2020 23:04

Формула Бине:

Fn = \frac{(\frac{1 + \sqrt{5}}{2})^{n} - (\frac{1 - \sqrt{5}}{2})^{n}}{\sqrt{5}}

При работе с типом double имеет место быть некоторая погрешность. При больших числах относительная погрешность стремится к 0.

Код:

#include <iostream>#include <cmath>#define sqrt5 sqrt(5)#define   (1 + sqrt5)/2#define n (1 - sqrt5)/2long long fibBinet(int n) {    return (long long) round((pow(, n) - pow(n, n)) / sqrt5);}int main() {    long long binet77 = fibBinet(77);    std::cout << "fibBinet(77) = " << binet77 << " (5527939700884757)" << std::endl;    std::cout << "A = " << abs(5527939700884757ll - binet77) << std::endl;    std::cout << "B = " << 5527939700884757ll / binet77 << std::endl;    return 0;}
Напишите функцию fibBinet(n), которая будет вычислять Fn по формуле Бине, согласно которой Fn равно
Напишите функцию fibBinet(n), которая будет вычислять Fn по формуле Бине, согласно которой Fn равно
0,0(0 оценок)
Ответ:
умно55567
умно55567
08.08.2021 18:17
Информационная деятельность - это совокупность действий, направленных на удовлетворение информационных потребностей граждан, юридических лиц и государства.
В целях удовлетворения этих потребностей органы государственной власти и органы местного и регионального самоуправления создают информационные службы, системы, сети, базы и банки данных.
Порядок их создания, структура, права и обязанности определяются Кабинетом Министров Украины или другими органами государственной власти, а также органами местного и регионального самоуправления.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота