Школа программиста

Забыли пароль?
[задачи] [курсы] [олимпиады] [регистрация]
Логин:   Пароль:    
Скрыть меню
О школе
Правила
Олимпиады
Фотоальбом
Гостевая
Форум
Архив олимпиад
Архив задач
Состояние системы
Рейтинг
Курсы
Новичкам
Работа в системе
Курсы ККДП
Дистрибутивы
Статьи
Ссылки


 
[Вернуться к задаче]   1 2
  1  Хакимов Мухаммадазиз, 27 января 2026 г. 11:23:44
     import sys from array import array def solve(): # Читаем m и n data = sys.stdin.read().split() if not data: return m, n = map(int, data) # Чтобы не считать лишнего, работаем до N limit = n # 'I' - это unsigned int (4 байта на элемент) # 1 000 000 * 4 байта = 4 000 000 байт (около 3.8 Мб) # Это точно влезет в 16 Мб вместе с системой s = array('I', [1] * (limit + 1)) if limit >= 0: s[0] = 0 if limit >= 1: s[1] = 0 # Решето суммы делителей # Перебираем делители только до половины N for d in range(2, limit // 2 + 1): # Оптимизированный цикл for multiple in range(2 * d, limit + 1, d): s[multiple] += d found = False # Ищем пары for a in range(m, n + 1): b = s[a] # Важно: b может быть больше n, поэтому проверяем границы if a < b <= n: if s[b] == a: sys.stdout.write(f"{a} {b}\n") foun
  2  Сташевский Александр Витальевич, 26 октября 2025 г. 12:13:47
     Тут лучше прекалком
  3  Арестович Егор Викторович, 29 марта 2025 г. 15:35:52
     Думал, что решение O(N * sqrt(N)) пройдёт, а не тут то было, 1.25 С, TLE. Ну, решил забить, посчитал с помощью этого решения, записал в массив, и отправил, AC, 0.015С
  4  Трухан Леонид, 17 декабря 2023 г. 18:20:45
     Сразу wa6, добавил проверку на то чтобы числа не были одинаковыми(6 6 к примеру) - AC.
  5  МИРЖАХОН КАЙИМОВ МИРТЕМИРОВИЧ, 23 декабря 2022 г. 22:35:31
     pere kalk
  6  Мисюкевич Илья Александрович, 22 января 2022 г. 19:34:19
     Чтобы прошёл 6 тест, внимательно читайте выходные данные.
  7  Касымхан Анай, 29 мая 2021 г. 20:21:09
     что в 6 тесте??
  8  Матус Даниил Дмитриевич, 18 августа 2020 г. 15:29:00
     шутка прост сдал через модифицированное решето эратосфена
  9  Матус Даниил Дмитриевич, 18 августа 2020 г. 15:15:09
     прекалком зашло за 0.2
  10  Зинов Вадим, 11 августа 2020 г. 2:25:37
     Без перекалка. Решение напоминает решето эратосфена. Кто хочет решить "честно" подумайте над этим.
  11  Кенес Ерасыл Талгатович, 06 мая 2020 г. 0:38:23
     Всем кто не писал Precalc - ом, если рантаймится на 10 тесте, то у вас обращение к несуществующему элементу массива( в частности у меня так было)
  12  АЩщщ, 13 марта 2020 г. 23:39:44
     Всё таки смог сменить ассимптотику O(N * cbrt(N)) на O(N * log(N)) ,сильно уменьшая потребление памяти.Удачи следующим людям которые решают эту задачу! На пути решения этой задачи ,было много моментов когда я мог заюзать прекалк. Т.к резы для (1 1000000) находило за 0.5 секунды. Но я решил не сдаваться и идти до конца ,чего и вам желаю.
  13  АЩщщ, 13 марта 2020 г. 22:55:52
     Программа на макс тесте работает 0.5 секунды,но не укладываюсь в ML ,хочу плакать 0(
  14  Дмитриев Дмитрий Андреевич, 13 февраля 2020 г. 8:40:58
     Сдал без предподсчета динамикой по сумме делителей у числа. За 0,8с.
  15  Дмитриев Дмитрий Андреевич, 12 февраля 2020 г. 20:56:50
     Дружественное самому себе называется совершенным:D
  16  Кокурин Даниил Михайлович, 20 января 2020 г. 19:04:48
     Странно, что одинаковые дружественные числа одинаковыми не бывают. К примеру, 6 и 6
  17  Винк В В, 08 октября 2018 г. 16:02:49
     Есть хороший алгоритм без прекалака около 12 млн. операций проходит за 0.124 сек. На ютубе в разборе Фёдора Меньшикова в самом конце видео говорится о нём.
  18  Данилыч, 16 апреля 2016 г. 21:09:50
     Для решения задачи без прекалка надо пользоваться формулой суммы делителей числа.
  19  Назарбек, 06 января 2014 г. 18:05:18
     Как можно решить без прекальк?
  20  Егор Степанов СПбГУ, 13 мая 2013 г. 3:26:28
     Добрый день!
Вот люди говорят про прекальк и сдали на <200 символов..
Ведь дружественных пар чисел при таких ограничениях 40 штук.
Если их сохранять в коде, то за <200 никак не сдать.
Скажите пожалуйста, как использовать прекальк, чтобы самому не вбивать все эти 40 пар в сам код.
 1 2

Чтобы оставить сообщение необходимо зарегистрироваться и авторизоваться!

Красноярский краевой Дворец пионеров, (c)2006 - 2026, ИНН 246305493507, E-mail: admin@acmp.ru