Чотири цілі послідовності
У цьому виклику ви перевірите чотири різні властивості натурального числа, задані наступними послідовностями. Позитивне ціле число N є
- досконалий ( OEIS A000396 ), якщо сума власних дільників N одно N . Послідовність починається з 6, 28, 496, 8128, 33550336, 8589869056, 137438691328, 2305843008139952128 ...
- refactorable ( OEIS A033950 ), якщо число дільників N є дільником N . Послідовність починається з 1, 2, 8, 9, 12, 18, 24, 36, 40, 56, 60, 72, 80, 84, 88, 96, 104, 108, 128 ...
- практичний ( OEIS A005153 ), якщо кожне ціле число 1 ≤ K ≤ N є сумою деяких різних дільників N . Послідовність починається з 1, 2, 4, 6, 8, 12, 16, 18, 20, 24, 28, 30, 32, 36, 40, 42, 48, 54, 56 ...
- високо композит ( OEIS A002128 ), якщо кожне число 1 ≤ K <N має строго менше , ніж дільників N . Послідовність починається з 1, 2, 4, 6, 12, 24, 36, 48, 60, 120, 180, 240, 360, 720, 840, 1260, 1680, 2520, 5040 ...
Чотири програми
Ваше завдання - написати чотири програми (маючи на увазі повні програми, визначення функцій або анонімні функції, які виконують введення-виведення будь-яким із стандартних методів ). Кожна програма повинна вирішити проблему членства однієї з цих послідовностей. Іншими словами, кожна програма прийме позитивне ціле число N ≥ 1 , і виведе триєдне значення, якщо N є в послідовності, і хибне значення, якщо ні. Ви можете припустити, що N знаходиться в межах стандартного цілого типу вашої мови програмування.
Програми повинні бути пов'язані таким чином. Чотири рядки ABCD
такі
AC
це програма, яка розпізнає ідеальні числа.AD
це програма, яка розпізнає номери, що змінюються.BC
це програма, яка розпізнає практичні числа.BD
це програма, яка розпізнає високоскладені числа.
Оцінка балів
Ваш бал - це загальна довжина (у байтах) рядків ABCD
, або іншими словами, загальна кількість байтів чотирьох програм, розділених на дві. Найнижчий бал у кожній мові програмування - переможець. Діють стандартні правила гольф-коду .
Наприклад, якщо чотири рядки a{
, b{n
, +n}
і =n}?
, потім чотири програми a{+n}
, a{=n}?
, b{n+n}
і b{n=n}?
, і рахунок 2 + 3 + 3 + 4 = 12.