結果
問題 | No.89 どんどんドーナツどーんといこう! |
ユーザー | 6soukiti29 |
提出日時 | 2017-08-16 15:53:47 |
言語 | Nim (2.2.0) |
結果 |
CE
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 790 bytes |
コンパイル時間 | 864 ms |
コンパイル使用メモリ | 64,512 KB |
最終ジャッジ日時 | 2024-06-30 02:45:13 |
合計ジャッジ時間 | 1,270 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
/home/judge/data/code/Main.nim(5, 32) Error: type mismatch: got 'seq[float]' for 'map(split(readLine(stdin), {' ', '\t', '\v', '\r', '\n', '\f'}, -1), parseFloat)' but expected 'tuple'
ソースコード
import sequtils,strutils,math var c : float64 = stdin.readline.parsefloat R1,R2,R,r,V : float64 (R1, R2) = stdin.readline.split.map(parsefloat) R = (R1 + R2) / 2 r = R - R1 proc F_out(x : float64): float64 = var d = r * r - x * x if d > 0: result = pow(R + sqrt(d), 2) else: result = 0 proc F_in(x : float64): float64 = var d = r * r - x * x if d > 0: result = pow(R - sqrt(d), 2) else: result = 0 proc integral(f : proc(x : float64) : float64 ; a : float64, b : float64): float64 = var n = a s : float64 = 0 dx : float64 = 0.001 while n < b: s += f(n + dx / 2) * dx n += dx return s V = PI * 2 * (integral(F_out, 0, r) - integral(F_in, 0, r)) echo V * c