Фон
Зростаюча множинна послідовність порядку визначається як послідовність цілих наборів яка задовольняє наступному:S 1 , S 2 , ⋯ , S n
- Кожен - це порожній підмножина . { 1 , 2 , ⋯ , N }
- Для , , тобто будь-які два послідовних набори не мають спільних елементів.S i ∩ S i + 1 = ∅
- Для середнє значення (середнє значення) суворо менше, ніж значення .S i S i + 1
Виклик
Враховуючи додатне ціле число N, виведіть довжину найдовшої послідовної збільшеної послідовності порядку N.
Тестові справи
Вони ґрунтуються на результатах проекту користувача Euler thunderre .
1 => 1 // {1}
2 => 2 // {1} {2}
3 => 3 // {1} {2} {3}
4 => 5 // {1} {2} {1,4} {3} {4}
5 => 7 // {1} {2} {1,4} {3} {2,5} {4} {5}
6 => 10 // {1} {2} {1,4} {3} {1,4,5} {2,3,6} {4} {3,6} {5} {6}
7 => 15 // {1} {2} {1,4} {3} {1,2,7} {3,4} {1,2,5,7} {4} {1,3,6,7} {4,5} {1,6,7} {5} {4,7} {6} {7}
8 => 21
9 => 29
10 => 39
11 => 49
12 => 63
13 => 79
14 => 99
15 => 121
16 => 145
17 => 171
18 => 203
19 => 237
20 => 277
21 => 321
22 => 369
23 => 419
24 => 477
25 => 537
Правила
Діють стандартні правила гольф-коду . Виграє найкоротше дійсне подання в байтах.
Баунті
Ця проблема обговорювалася тут на форумі Project Euler близько 4 років тому, але нам не вдалося розробити доцільний алгоритм поліноміального часу (з точки зору N). Тому я присуджую +200 баунті за перше подання, яке цього домагається, або доводжу його неможливість.