18.1. Вписане коло (геометрія + цілі числа + перебір двома вкладеними циклами)
Позначимо через:
a, b, c — сторони трикутника у порядку незростання;
r — радіус вписаного кола;
p = (a + b + c)/2 — півпериметр;
A = 2(p – a),
B = 2(p – b),
C = 2(p – c) — натуральні величини, перераховані у порядку неспадання.
Маємо: A + B + C = 2p і p2r2 = p(p – a)(p – b)(p – c).
Враховуючи монотонність функції y = x / (x + const), маємо:
A2 / 3 ≤ ABC / (A + B + C) = (2r)2, звідси
A ≤ 2r · 31/2.
Для сталого A маємо:
AB2 / (A + 2B) ≤
ABC / (A + B + C) = (2r)2, звідси
AB2 – 8Br2 – 4Ar2 ≤ 0.
Для сталих A і B величину C визначають однозначно:
C = 4r2(A + B) / (AB – 4r2).
Для відомих A, B і C довжини сторін трикутника визначають однозначно:
a = (B + C) / 2;
b = (C + A) / 2;
c = (A + B) / 2.
18.2. Многогранник-3 (аналітична геометрія + графіка + рекурсія)
Визначаємо декартові координати вершин грані 1 на розгортці за умови, що вершини сторони з найменшими (нульовими) ординатами точок мають координати (0; 0) і (1; 0).
Починаючи з грані 1 і обходячи грань по периметру, рекурсивно визначаємо координати вершин грані розгортки, що має з розглядуваною спільне ребро.
За відомими координатами вершин граней на розгортці знаходимо [xmin; xmax] і [ymin; ymax] — діапазони зміни абсцис x і ординат y вершин граней на розгортці, забезпечивши справдження умови єдиного мірила по горизонталі й вертикалі:
Знаходимо екранні координати Ix і Iy вершин граней на розгортці згідно з такими формулами:
В останніх двох формулах [x] — ціла частина x. Хоча можна і краще взати результат округлення до цілого числа.