結果
| 問題 |
No.475 最終日 - Writerの怠慢
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-12-25 10:47:52 |
| 言語 | Python2 (2.7.18) |
| 結果 |
AC
|
| 実行時間 | 164 ms / 2,000 ms |
| コード長 | 570 bytes |
| コンパイル時間 | 223 ms |
| コンパイル使用メモリ | 6,784 KB |
| 実行使用メモリ | 14,068 KB |
| 最終ジャッジ日時 | 2024-12-24 01:36:56 |
| 合計ジャッジ時間 | 2,614 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 15 |
ソースコード
#!/usr/bin/python2
# -*- coding: utf-8 -*-
# †
from bisect import bisect_right
n, s, writer_id = map(int, raw_input().split())
a = map(int, raw_input().split())
score = []
for i in xrange(1, n):
score.append(s * 50 + (s * 250) / (i + 4))
writer_score = a[writer_id] + score[0]
score.reverse()
posArr = []
for i in xrange(n):
if i == writer_id:
continue
pos = bisect_right(score, writer_score - a[i])
posArr.append(pos)
posArr.sort()
prob = 1.
for i in xrange(n-1):
prob *= float(posArr[i] - i) / (n - i - 1)
print '{:.15f}'.format(prob)