Визначення
"Цілий трикутник" - це цілий з цілими координатами. Наприклад, наступний трикутник є цілим трикутником:
(0, 0), (0, 1), (1, 2) with perimeter 1 + sqrt(2) + sqrt(5) ≈ 4.650.
Завдання
Мета цього виклику - порахувати всі цілі трикутники (до конгруентності) з периметром менше n.
Вхід і вихід
Аргумент подаватиметься як ціле число, а на виході має бути кількість трикутників з периметром суворо менше аргументу.
Приклади
Найменший цілий трикутник за периметром відповідає
(0, 0), (0, 1), (1, 0) which has perimeter 2 + sqrt(2) ≈ 3.414
Наступні найменші:
(0, 0), (0, 1), (1, 2) with perimeter 1 + sqrt(2) + sqrt(5) ≈ 4.650,
(0, 0), (0, 2), (1, 1) with perimeter 2 + 2sqrt(2) ≈ 4.828,
(0, 0), (0, 2), (1, 0) with perimeter 3 + sqrt(5) ≈ 5.236, and
(0, 0), (1, 2), (2, 1) with perimeter sqrt(2) + 2sqrt(5) ≈ 5.886
Тестові приклади:
a(1) = 0
a(2) = 0
a(3) = 0
a(4) = 1
a(5) = 3
a(6) = 5
a(7) = 11
a(8) = 18
a(9) = 29
a(10) = 44
a(12) = 94
a(20) = 738
a(30) = 3756
a(40) = 11875
Я маю координати для кожного з трикутників у цьому Гісті .
Попередження
Зауважте, що два невідповідні трикутники можуть мати однаковий периметр:
(0, 0), (0, 3), (3, 0) and (0, 0), (0, 1), (3, 4) both have perimeter 6 + 3sqrt(2).
Також пам’ятайте, що нерівність сувора ; 3-4-5 піфагорейського трикутника слід рахувати через (13), а не a (12).
Оцінка балів
Це код-гольф - найкоротший виграш коду!