М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
gobon1337
gobon1337
20.01.2021 20:05 •  Информатика

1. укажите длину кратчайшего пути между пунктами а и f.
2. укажите длину самого длинного пути из пункта а в пункт f при этом он должен проходить через пункт d
3. укажите самый короткий путь из пункта а в пункт f и чтобы при этом он не проходил через вершину c.

важно! делать через дерево.​

👇
Ответ:
аня2934
аня2934
20.01.2021
1до мене дійшли суперечливі чутки про ваше відношення до своїх обов язків 2.давайте поговоримо по душах 3.на площі стоїть пам ятник великого українського письменника тараса григоровича шевченка. 4.на айстрах листя уже засохло.опалим листям вкрилась земля. 5.по відношенню до всього сказаного я хочу сказати,що не треба втручатися в особисті справи кожного з нас. 6.підписку(передплату) на газети і журнали можно оформити протягом двох місяців. 7.незважаючи на несприятливі умови,мелітопольскі активісти організували на площі подання в день української вишиванки. 8.більша половина студентів(близько 100 чоловік)поїхала в вінницьку область на фольклорну практику. 9на святкування ювілею школи,якій почався рівно о сімнадцятій годині,зібралося багато колишніх випускників. 10.серед міроприємств по відзначенню цього свята були наступні: виступи музичних колективів,конкурси,вікторини.
4,5(58 оценок)
Открыть все ответы
Ответ:
yaroslavaaf
yaroslavaaf
20.01.2021

import math

import sys

def get_first_max(tree, idx, l, r, L, R):

 if r <= L or R <= l:

   return -1

 if l >= L and r <= R:

   return tree[idx]

 m = (l + r) // 2

 return max(get_first_max(tree, idx * 2 + 1, l, m, L, R), get_first_max(tree, idx * 2 + 2, m, r, L, R))

num = input()

k = int(input())

n = len(num)

N = 2**math.ceil(math.log2(n))

M1 = 10 ** 7

M2 = 10 ** 6

tree = [-1] * (2 * N)

for i in range(n):

 tree[N - 1 + i] = int(num[i]) * M1  + M2 - i

for i in range(N - 2, -1, -1):

 tree[i] = max(tree[2 * i + 1], tree[2 * i + 2])

i = 0

ans = ""

for _ in range(n - k):

 maximum = get_first_max(tree, 0, 0, N, i, i + k + 1)

 val = maximum // M1

 pos = M2 - maximum % M1

 ans += str(val)

 k -= pos - i

 i = pos + 1

 if k == 0:

   ans += num[i:]

   break

print(ans)

4,6(3 оценок)
Ответ:
Karina5252
Karina5252
20.01.2021

import math

import sys

def get_first_max(tree, idx, l, r, L, R):

if r <= L or R <= l:

  return -1

if l >= L and r <= R:

  return tree[idx]

m = (l + r) // 2

return max(get_first_max(tree, idx * 2 + 1, l, m, L, R), get_first_max(tree, idx * 2 + 2, m, r, L, R))

num = input()

k = int(input())

n = len(num)

N = 2**math.ceil(math.log2(n))

M1 = 10 ** 7

M2 = 10 ** 6

tree = [-1] * (2 * N)

for i in range(n):

tree[N - 1 + i] = int(num[i]) * M1  + M2 - i

for i in range(N - 2, -1, -1):

tree[i] = max(tree[2 * i + 1], tree[2 * i + 2])

i = 0

ans = ""

for _ in range(n - k):

maximum = get_first_max(tree, 0, 0, N, i, i + k + 1)

val = maximum // M1

pos = M2 - maximum % M1

ans += str(val)

k -= pos - i

i = pos + 1

if k == 0:

  ans += num[i:]

  break

print(ans)

Объяснение:

4,8(38 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ