QOJ.ac

QOJ

Time Limit: 2 s Memory Limit: 256 MB Total points: 100

#958. Lockout vs tourist

Statistics

あなたはロックアウト形式の対戦を行っています。ルールは単純で、1対1の対戦であり、$n$ 個の問題にそれぞれ異なる点数が割り当てられています。問題の正解を得た最初の参加者のみがその点数を獲得でき、たとえもう一方が1秒遅れたとしても点数は得られません。簡略化のため、制限時間や早期決着は考慮せず、すべての問題が少なくともどちらか一方の参加者によって解かれるまで試合は続きます。

あなたはかなり優秀ですが……相手は tourist です。これは悲惨な状況です。勝つのは難しいでしょうが、面目を保つために何とかして点数を獲得したいと考えています。もしあなたと tourist が同じ問題に取り組んだ場合、確実に彼があなたに勝ちます。しかし、もしあなたが別の問題を選べば、あなたにチャンスがあります! あなたはその問題を tourist よりも先に解くことができるでしょう。しかしその直後、彼は「バーサクモード」に入り、残りのすべての問題を即座に解いてしまいます。1問でも解ければ何もないよりはマシですよね?

このプロセスを少し形式化しましょう。あなたと tourist は、未解決の問題が残っている限り、それぞれ問題を選択します。未解決の問題が残っていない場合、ゲームは終了し、あなたの獲得点数は 0 点となります。それ以外の場合、あなたと tourist は相手がどの問題を選んだかを知らずに、取り組む問題を選択します。もし同じ問題を選んだ場合、tourist があなたより先にその問題を解き、問題が減った状態で元の状態に戻ります。もし異なる問題を選んだ場合、あなたが選んだ問題の点数を獲得しますが、tourist が残りのすべての問題を即座に解くため、ゲームは直ちに終了します。

あなたは自分の獲得点数を最大化したいと考えており、tourist はそれを最小化したいと考えています。両者が最適に行動する場合、ゲームの期待値はいくらになるでしょうか。

入力

1行目には整数 $n$ ($1 \le n \le 22$) が与えられます。これは問題の数です。 2行目には $n$ 個の整数 $a_i$ ($1 \le a_i \le 10^9$) が与えられます。これは各問題の点数です。

出力

あなたの期待スコアを1つの数値で出力してください。

あなたの回答は、絶対誤差または相対誤差が $10^{-6}$ を超えない場合に正解とみなされます。 形式的には、あなたの回答を $a$、ジャッジの回答を $b$ としたとき、$\frac{|a-b|}{\max(1,|b|)} \le 10^{-6}$ を満たす場合に正解となります。

入出力例

入力 1

2
6 7

出力 1

3.2307692307692

入力 2

3
1 1 1

出力 2

0.8333333333333

入力 3

11
1 2 3 4 5 6 7 8 9 10 11

出力 3

9.4422713866103

注記

最初のサンプルにおいて、tourist は常に2番目の問題を選ぶことで確実に試合に勝つことができます。そして、その戦略に対してあなたは常に1番目の問題を選ぶことで6点を得ることができます。しかし、tourist はあなたの期待スコアを最小化するように最適にプレイするため、時にはあなたに試合で勝たせるような選択をすることもあります。

Editorials

IDTypeStatusTitlePosted ByLast UpdatedActions
#318EditorialOpen题解jiangly2025-12-14 07:04:13View

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.