| 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 пар в сам код.
|
|
|