結果

問題 No.1151 チャレンジゲーム
ユーザー tails
提出日時 2020-08-07 23:18:58
言語 Perl
(5.40.0)
結果
WA  
実行時間 -
コード長 366 bytes
コンパイル時間 411 ms
コンパイル使用メモリ 6,944 KB
実行使用メモリ 17,280 KB
最終ジャッジ日時 2024-09-25 00:10:48
合計ジャッジ時間 16,402 ms
ジャッジサーバーID
(参考情報)
judge2 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2 WA * 1
other AC * 13 WA * 37
権限があれば一括ダウンロードができます
コンパイルメッセージ
Name "main::h" used only once: possible typo at Main.pl line 3.
Main.pl syntax OK

ソースコード

diff #

sub f{
	my($u,$s)=@_;
	$h{$u,$s}//=do{
		if($u==(1<<$n)-1){
			$s>0;
		}else{
			my $p=0;
			for(0..$n-1){
				if(!($u&1<<$_)){
					my $x=$a[$_];
					my $r;
					my $q=$x==1?1- f($u|1<<$_,-$s-2):($r=(1/$x)*1/(1-(1-1/$x)**2))*(1- f($u|1<<$_,-$s-$x*2)) + (1-$r)*f($u|1<<$_,$s-$x*2);
					$p=$q if $p<$q;
				}
			}
			$p;
		}
	}
}

$n=<>;
@a=glob<>;

print f(0,-1);
0