, ответ нужен на языке питон B. Гости
Ограничение времени 1 секунда
Ограничение памяти 256Mb
Ввод стандартный ввод или input.txt
Вывод стандартный вывод или output.txt
Вася переехал из своего родного города и очень скучает по старым друзьям. К сожалению, Вася снимает маленькую квартиру и одновременно в гости к нему может приехать только один друг.
Каждый друг сказал Васе два числа A и B - с какого по какой день он может приехать в гости. Каждый друг приезжает и уезжает в полдень. Каждый друг может приехать к Васе только один раз и остаться у него на несколько дней. Вася хотел бы, чтобы суммарное количество дней, когда у него в гостях есть кто-нибудь из друзей, было максимальным ему определить даты приезда для каждого из друзей так, чтобы они не пересекались (допустима ситуация, что в один день один из друзей приезжает, а другой - уезжает) и суммарное время, когда у Васи в гостях есть кто-то из друзей, было максимальным.
Формат ввода
В первой строке записаны целое число N (1 ≤ N ≤ 100000) - количество друзей Васи.
В следующих N строках записано по два целых числа Ai и Bi (оба числа от 1 до 109) - возможное время приезда i-го друга.
Формат вывода
Выведите N пар чисел Li и Ri - номера дней, в которые приедет и уедет i-й друг соответственно (Ai ≤ Li ≤ Ri ≤ Bi). Если i-го друга приглашать не нужно, выведите пару чисел -1 -1. Если правильных ответов несколько - выведите любой из них.
Пример 1
Ввод Вывод
3
1 2
2 4
3 5
1 2
3 4
5 5
Пример 2
Ввод Вывод
3
2 3
1 4
3 5
-1 -1
1 4
5 5
ответ:
static void main(string[] args)
{
int n; double proizvedenie = 1;
console.write("укажите размерность массива: ");
n = convert.toint32(console.;
int[] mas = new int[n];
random rnd = new random();
for (int i = 0; i < n; i++)
{
mas[i] = rnd.next(1, 10);
}
console.writeline("массив: ");
for (int i = 0; i < n; i++)
{
console.write(string.format("{0,3}", ;
}
console.writeline();
if (n > = 200)
{
for (int i = 0; i < 200; i++)
{
proizvedenie = proizvedenie * math.pow(mas[i], 2);
}
console.writeline("произведение квадратов первых 200 чисел = " + proizvedenie);
}
else
{
console.writeline("размерность массива < 200.");
}
console.writeline();
console.readkey();
}
объяснение:
как я понял из вопроса - создаётся случайный массив из 200+ чисел, и находится произведение квадратов первых 200 чисел. число получается достаточно огромное.
ответ:
округлением чисел в python занимается встроенная функция round.
round(number[, ndigits]) - округляет число number до ndigits знаков после запятой (по умолчанию, до нуля знаков, то есть, до ближайшего целого)
тут есть одна особенность, о которой нужно знать, и о которой часто забывают.
со школы многие привыкли, что, когда (n + 1) знак = 5, а последующие знаки равны нулю, округление производится всегда в большую по модулю сторону.
однако, как видно из примеров, в python это не так. здесь используется так называемое "банковское округление", то есть округление к ближайшему чётному.
на практике это оказывается не так уж и важно
что-то не так, правда? на самом деле, всё именно так, как и задумывалось. просто из-за проблем с точностью чисел с плавающей точкой это число чуть больше, чем 2.85, а потому округляется до 2.9