CONTEST
Soal berjudul NN and the Optical Illusion ini merupakan bagian dari contest Codeforces Round #532 (Div 2). Pembahasan pada post kali ini dibuat menurut pemahaman penulis, sedangkan pembahasan official dari tim pembuat soal bisa dicek di Official Editorial Codeforces.
Soal ini di Codeforces termasuk ke dalam tag jenis soal geometri dan binary search. Soal ini berkode C yang berarti memiliki tingkat kesulitan yang cukup mudah sampai sedang. Pada artikel ini, penulis mencoba melihat dengan pendekatan geometri dan menggunakan rumus trigonometri untuk memecahkan problem.

RINGKASAN SOAL
NN berselancar di media sosial dan selalu melihat suatu gambar yang terdiri dari sebuah lingkaran di tengah (inner circle) dan sejumlah $n$ lingkaran di luar (outer circle). Semua outer circle berukuran sama dengan jari-jari $R$ dan bersinggungan dengan inner circle yang memiliki jari-jari $r$. Gambar di atas merupakan contoh dua buah gambar yang pernah dilihat NN.
Bantu NN untuk menghitung jari-jari outer circle $R$, jika diketahui jari-jari inner circle $r$ dan jumlah outer circle $n$.
Input
Terdiri dari satu baris dengan dua angka terpisahkan oleh spasi. Masing-masing secara berurutan adalah nilai $n$ dan $r$ dimana $(3 \leq n \leq 100, 1 \leq n \leq 100)$, yakni jumlah outer circle dan jari-jari inner circle.
Output
Terdiri dari sebuah nilai $R$ — jari-jari outer circle yang dibutuhkan untuk membentuk gambar (agar semua outer circle) bersinggungan dengan inner circle. Jawaban diterima jika nilai error absolutnya tidak melebihi 10-6
Jika jawaban NN adalah $a$, dan jawaban juri adalah $b$, maka jawaban NN diterima jika dan hanya jika $\frac{\quad \lvert a-b\rvert \quad}{\max{(a, \lvert b\rvert)}} \le 10^{-6}$
Contoh dan pembahasan
input $n$ dan $r$:
3 1
output $R$:
6.4641016
Input di atas dapat diilustrasikan pada gambar di bawah ini. Setiap titik pusat dari outer circle jika dihubungkan dapat membentuk segi-$n$ sama sisi. Dikarenakan $n$ pada contoh ini adalah 3, maka yang terbentuk adalah segi tiga sama sisi $ABC$, di mana sisinya merupakan dua kali panjang jari-jari outer circle yakni sebesar $2R$. Kemudian, dari segitiga sama sisi tersebut dapat digambar lagi sebuah segitiga sama kaki $BCD$ (warna biru) untuk mencari nilai $R$.

Dari segitiga sama kaki $BCD$ di atas dapat dicari nilai $R$ dengan menerapkan salah satu rumus trigonometri:
Rumus trigonometri:
$\sin{\angle\text{BDt}} = \frac{\text{Bt}} {\text{BD}}$
Rumus mencari R:
$\sin{\angle\text{BDt}} = \frac{\text{R}} {\text{R+r}}$
$(\text{R}*\sin{\angle\text{BDt}}) + (\text{r}*\sin{\angle\text{BDt}}) = \text{R}$
$\text{R}*(\sin{\angle\text{BDt}} – 1) = -\text{r}*\sin{\angle\text{BDt}}$
$\text{R} = \frac{-\text{r} \; * \; \sin{\angle\text{BDt}}} {\sin{\angle\text{BDt}} \;- \;\text{1}}$
$\text{atau}$
$\text{R} = \frac{\text{r} \; * \; \sin{\angle\text{BDt}}} {\text{1} \;- \;\sin{\angle\text{BDt}}}$
Besar $\angle \text{BDC}$ diperoleh dari hasil bagi sudut lingkaran yakni $\text{360}^\circ$ dengan jumlah outer circle yakni $n$. Setelah diketahui besaran sudut, maka dengan menggunakan rumus di atas dapat dihitung nilai $R$.
Nilai R:
$\angle \text{BDC} = \frac{360^\circ}{ \text{n}}$
$\angle \text{BDt} = \frac{\angle \text{BDC}}{\text{2}}$
$\angle \text{BDt} = \frac{120^\circ} {\text{2}} = 60^\circ$


