結果

問題 No.133 カードゲーム
ユーザー ducktailducktail
提出日時 2018-06-20 15:18:36
言語 Haskell
(9.10.1)
結果
AC  
実行時間 2 ms / 5,000 ms
コード長 536 bytes
コンパイル時間 4,348 ms
コンパイル使用メモリ 170,624 KB
実行使用メモリ 5,376 KB
最終ジャッジ日時 2024-06-30 17:25:37
合計ジャッジ時間 5,234 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 19
権限があれば一括ダウンロードができます
コンパイルメッセージ
Loaded package environment from /home/judge/.ghc/x86_64-linux-9.8.2/environments/default
[1 of 2] Compiling Main             ( Main.hs, Main.o )
[2 of 2] Linking a.out

ソースコード

diff #

import Control.Applicative ((<$>), (<*>))
import Control.Monad (guard)
import Data.List (permutations)

main :: IO ()
main = solve <$> readLn <*> f <*> f >>= print
  where f = map read <$> words <$> getLine

solve :: Int -> [Int] -> [Int] -> Double
solve n as bs = fromIntegral (sum vs) / fromIntegral (product [1..n] ^ 2)
  where ass = permutations as
        bss = permutations bs
        vs = do
          xs <- ass
          ys <- bss
          guard $ sum (zipWith (\a b -> if a > b then 1 else (-1)) xs ys) > 0
          return 1
0