макс3109
29.10.2021 04:49

Эффективные ветрогенераторы Альтернативные источники энергии становятся крайне популярными в последнее время. Например, сети из ветрогенераторов являются довольно эффективными и, при этом, не загрязняют окружающую среду.

Ваша сеть состоит из n ветрогенераторов. Ветрогенераторы с чётными номерами (то есть с номерами 2, 4, 6...) являются высокоэффективными. Они производят одну единицу энергии и во время сильного, и во время слабого ветра. А ветрогенераторы с нечётными номерами (то есть с номерами 1, 3, 5...) являются низкоэффективными и производить единицу энергии только во время сильного ветра.

Вам дана история ветров, состоящая из m событий. Каждое событие можно описать тремя числами: l, r, k. Это означает, что ветер дул на ветрогенераторы с номерами от l до r включительно. Причём, k=1 означает, что ветер был сильным, а k=2 означает, что ветер был слабым.
Чтобы оценить эффективность сети, требуется написать программу, сколько энергии в среднем вырабатывал один ветрогенератор за всю историю наблюдений за ветром
Гарантируется, что ответ является целым числом.
Входные данные
В первой строке содержатся числа n, m (1⩽n,m⩽105)- количество ветрогенераторов в сети и количество событий.
В следующих m строках содержится описание событий по одному в строке. Каждая строка содержит числа l, r, k (1⩽l⩽r⩽n,1⩽k⩽2).
Выходные данные
Выведите единственное число − среднее количество энергии, выработанное ветрогенератором.
Система оценки
Решения, работающие правильно при n,m≤1000, будут набирать не менее

Решения, работающие правильно при k=1, будут набирать не менее
Пример
входные данные
5 3
1 5 1
1 3 2
2 5 1
выходные данные
2
Примечание
В примере после первого события все пять ветрогенераторов выработают по единице энергии. После второго события только ветрогенератор с номером 2 выработает единицу энергии. После третьего события ветрогенераторы с номерами от 2 до 5 выработают по единице энергии.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
пир14
19.03.2020 03:54

Как и в математике. Сначала выполняем операции в скобках, потом вне.

a=10 b=20

a) rez:= (a=10) or (b>10) = TRUE or TRUE = TRUE

б) rez:= (a>5) and (b>5) = TRUE and TRUE = TRUE

в) rez:= (not (a<15)) or (b>20) = (not TRUE) or FALSE = FALSE or FALSE = FALSE

Программа, так полагаю, на паскале. Вот примерный код

var

a, b :integer;

rez : boolean;

begin

a:=10;

b:=20;

rez:=(a=10) or (b>10);

writeln(rez);

end.

Вместо строчки rez:=(a=10) or (b>10); подставляешь то, что тебе нужно, и будет счастье.

0,0(0 оценок)
Ответ:
linagaribyan
09.04.2022 07:46

var

kurs, summa, rub: double;

begin

readln(kurs, summa);

rub := kurs * summa;

writeln(trunc(rub), ' РУБ ', (frac(rub) * 100):2:0, ' КОП');

end.

Объяснение:

Получаем два числа, затем перемножаем курс на сумму в долларах, чтобы получить рубли и затем выводим в нужном формате.  

trunc(a) получает целую часть от числа  

frac(a) получает дробную часть от числа, затем умножаем на 100 для преобразования дробной части в целую(для вывода на экран) (например число 0.22 преобразуется в 22.0) и с :2:0 выводим в формате 2 цифры до запятой и 0 после.

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота