atcoder#S8PC3E. 円と三角形

円と三角形

题目描述

半径が 1 1 の円があり、頂点 1 1 N N が時計回りに並んでいます。
頂点は, 円周を N N 等分しています。
square1001は, 3 3 つの頂点を選んで三角形を作ろうとしています。

N(N1)(N2)6 \frac{N(N-1)(N-2)}{6} 通りの作り方のうち, 面積が小さい順に数えて K K 番目となる三角形の面積を出力してください。
ただし, 面積が同じ場合は、面積だけを出力すればいいので順番は適当で構いません。

例えば, N = 4, K = 3 N\ =\ 4,\ K\ =\ 3 のとき, 次のようになります。

  • 3頂点の番号が (1,2,3) (1,2,3) のとき, 面積 = 1 =\ 1
  • 3頂点の番号が (1,2,4) (1,2,4) のとき, 面積 = 1 =\ 1
  • 3頂点の番号が (1,3,4) (1,3,4) のとき, 面積 = 1 =\ 1
  • 3頂点の番号が (2,3,4) (2,3,4) のとき, 面積 = 1 =\ 1

よって, 3番目の三角形の面積 = 1.0 =\ 1.0 となります。
問題作成者:E869120

输入格式

入力は以下の形式で標準入力から与えられる。

N K N\ K

  • 1行目に, 円周上にある点の数 N N と, 何番目の三角形かを表す整数 K K が, 空白区切りで与えられる。

输出格式

  • 面積が小さい順から数えて K K 番目となる三角形の面積を出力しなさい。
  • ただし, 絶対誤差または相対誤差が 109 10^{-9} 以下であれば正解とみなされる。

题目大意

一个单位圆周上均匀地分布着n个点。 通过连接它们我们可以得到一堆(准确地说,是 (n3)n \choose 3个)三角形。 所以就需要您来求其中第k小的那一个的面积。 误差只要在 10910^{-9} 以内都是可以接受的。

Translated by @6ziv

4 3
1.000000000000000000
6 9
0.86602540378
12 220
1.29903810568

提示

制約

  • 3  N  200,000 3\ \le\ N\ \le\ 200,000
  • 1  K  N(N  1)(N  2)6 1\ \le\ K\ \le\ \frac{N(N\ -\ 1)(N\ -\ 2)}{6}

小課題

小課題1 [ 160 160 点 ]

  • N  100 N\ \le\ 100

小課題2 [ 240 240 点 ]

  • N  1000 N\ \le\ 1000

小課題3 [ 450 450 点 ]

  • 追加の制約はない。

Sample Explanation 1

この入力例は問題文で説明したとおりです。

Sample Explanation 2

N = 6 N\ =\ 6 のとき, 面積が 34 \frac{\sqrt{3}}{4} となるような頂点の選び方は 6 6 通り, 面積が 32 \frac{\sqrt{3}}{2} となるような頂点の選び方は 12 12 通り, 面積が 3 34 \frac{3\ \sqrt{3}}{4} となるような頂点の選び方は 2 2 通りあります。 よって, K = 9 K\ =\ 9 番目の三角形の面積は 32 \frac{\sqrt{3}}{2} となります。

Sample Explanation 3

N = 12 N\ =\ 12 のとき, 三角形の作り方は 12 × 11 × 106 = 220 \frac{12\ \times\ 11\ \times\ 10}{6}\ =\ 220 通りあります。 この中で面積が一番大きいのは正三角形となるときなので, K = 220 K\ =\ 220 番目の三角形の面積は 3 34 \frac{3\ \sqrt{3}}{4} となります。