結果
問題 | No.2352 Sharpened Knife in Fall |
ユーザー |
![]() |
提出日時 | 2023-09-07 22:18:36 |
言語 | Ruby (3.4.1) |
結果 |
AC
|
実行時間 | 2,434 ms / 3,000 ms |
コード長 | 419 bytes |
コンパイル時間 | 73 ms |
コンパイル使用メモリ | 7,424 KB |
実行使用メモリ | 14,592 KB |
最終ジャッジ日時 | 2024-06-25 15:55:42 |
合計ジャッジ時間 | 35,010 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 19 |
コンパイルメッセージ
Syntax OK
ソースコード
R, K = gets.split.map(&:to_i) def f(c, r) r * r * Math.acos(c / r.to_f) - c * Math.sqrt(r ** 2 - c ** 2) end S = R * R * Math::PI ans = [] (K / 2).times do |i| s = S * (i + 1) / (K + 1) ok = 0 ng = R.to_f loop_cnt = 100 loop_cnt.times do c = (ok + ng) / 2.0 if f(c, R) >= s ok = c else ng = c end end ans << ok ans << -ok end ans << 0 if K.odd? ans.sort! puts ans