Submission #997996


Source Code Expand

{-# LANGUAGE ScopedTypeVariables #-}
import Control.Applicative
import Control.Monad
import Control.Monad.State
import Control.DeepSeq
import Data.Array
import Data.Bits
import Data.Char
import Data.Functor.Identity
import Data.List
import Data.Maybe
import Data.Ord
import Data.Tree
import Data.Tuple
import qualified System.IO
import qualified Data.Map as M
import qualified Data.Set as S
import qualified Data.Sequence as Q
import qualified Data.ByteString.Char8 as B

main = do
  n <- getInt
  as <- getInts
  s <- getLine
  let
    m = n`div`2
    ans =
      if even n
      then
        max (as !! (m-1)) (as !! m)
      else
        max (as !! m) $ min (as !! (m-1)) (as !! (m+1))
  print ans



type Z = Int
type Q = Rational
type R = Double
type S = String

fint :: (Integral a, Num b) => a -> b
fint = fromIntegral

getInt = fst . fromJust . B.readInt <$> B.getLine
getIntPair = (\[a,b]->(a,b)) <$> getInts
getInts = map (fst . fromJust . B.readInt) . B.words <$> B.getLine
getStr = B.unpack <$> B.getLine

yesNo :: Bool -> String
yesNo True = "Yes"
yesNo False = "No"

printList :: (Show a) => [a] -> IO ()
printList = putStrLn . unwords . map show

readLnList :: (Read a) => IO [a]
readLnList = map read . words <$> getLine


-----  Union-find
type UnionFindT v m a = StateT (M.Map v (UnionFindVal v)) m a
newtype UnionFindVal v = UnionFindVal v

runUnionFindT :: (Monad m) => UnionFindT v m a -> m a
runUnionFindT = flip evalStateT $ M.empty

runUnionFind = runIdentity . runUnionFindT

ufFresh :: (Monad m, Ord v) => v -> UnionFindT v m ()
ufFresh v = modify $ M.insert v (UnionFindVal v)

ufClass :: (Monad m, Ord v) => v -> UnionFindT v m v
ufClass v = do
  (UnionFindVal pv) <- gets (M.! v)
  if v == pv
    then return v
    else do
      c <- ufClass pv
      modify $ M.insert v (UnionFindVal c)
      return c

ufUnify v w = do
  cv <- ufClass v
  cw <- ufClass w
  modify $ M.insert cw (UnionFindVal cv)
  return $ cv /= cw

Submission Info

Submission Time
Task B - Compression
User tos
Language Haskell (GHC 7.10.3)
Score 800
Code Size 2034 Byte
Status WA
Exec Time 22 ms
Memory 7420 KB

Judge Result

Set Name Sample subtask1 subtask2 All
Score / Max Score 0 / 0 0 / 400 800 / 800 0 / 200
Status
AC × 3
WA × 1
AC × 4
WA × 9
AC × 13
AC × 18
WA × 31
Set Name Test Cases
Sample sample_1.txt, sample_2.txt, sample_3.txt, sample_4.txt
subtask1 sample_2.txt, subtask_1.2_1.txt, subtask_1.2_2.txt, subtask_1_1.txt, subtask_1_10.txt, subtask_1_2.txt, subtask_1_3.txt, subtask_1_4.txt, subtask_1_5.txt, subtask_1_6.txt, subtask_1_7.txt, subtask_1_8.txt, subtask_1_9.txt
subtask2 sample_1.txt, subtask_1.2_1.txt, subtask_1.2_2.txt, subtask_2_1.txt, subtask_2_10.txt, subtask_2_2.txt, subtask_2_3.txt, subtask_2_4.txt, subtask_2_5.txt, subtask_2_6.txt, subtask_2_7.txt, subtask_2_8.txt, subtask_2_9.txt
All sample_1.txt, sample_2.txt, sample_3.txt, sample_4.txt, 2_1.txt, 2_2.txt, subtask_1.2_1.txt, subtask_1.2_2.txt, subtask_1_1.txt, subtask_1_10.txt, subtask_1_2.txt, subtask_1_3.txt, subtask_1_4.txt, subtask_1_5.txt, subtask_1_6.txt, subtask_1_7.txt, subtask_1_8.txt, subtask_1_9.txt, subtask_2_1.txt, subtask_2_10.txt, subtask_2_2.txt, subtask_2_3.txt, subtask_2_4.txt, subtask_2_5.txt, subtask_2_6.txt, subtask_2_7.txt, subtask_2_8.txt, subtask_2_9.txt, subtask_3_1.txt, subtask_3_10.txt, subtask_3_11.txt, subtask_3_12.txt, subtask_3_13.txt, subtask_3_14.txt, subtask_3_15.txt, subtask_3_16.txt, subtask_3_17.txt, subtask_3_18.txt, subtask_3_19.txt, subtask_3_2.txt, subtask_3_20.txt, subtask_3_21.txt, subtask_3_3.txt, subtask_3_4.txt, subtask_3_5.txt, subtask_3_6.txt, subtask_3_7.txt, subtask_3_8.txt, subtask_3_9.txt
Case Name Status Exec Time Memory
2_1.txt AC 3 ms 380 KB
2_2.txt WA 3 ms 380 KB
sample_1.txt AC 3 ms 380 KB
sample_2.txt AC 3 ms 380 KB
sample_3.txt WA 3 ms 380 KB
sample_4.txt AC 3 ms 380 KB
subtask_1.2_1.txt AC 3 ms 380 KB
subtask_1.2_2.txt AC 3 ms 380 KB
subtask_1_1.txt WA 21 ms 6524 KB
subtask_1_10.txt WA 21 ms 6524 KB
subtask_1_2.txt WA 21 ms 6524 KB
subtask_1_3.txt WA 21 ms 6524 KB
subtask_1_4.txt WA 21 ms 7420 KB
subtask_1_5.txt WA 5 ms 1532 KB
subtask_1_6.txt WA 21 ms 6524 KB
subtask_1_7.txt AC 3 ms 380 KB
subtask_1_8.txt WA 21 ms 6524 KB
subtask_1_9.txt WA 21 ms 6524 KB
subtask_2_1.txt AC 21 ms 6524 KB
subtask_2_10.txt AC 21 ms 6524 KB
subtask_2_2.txt AC 21 ms 6524 KB
subtask_2_3.txt AC 21 ms 6524 KB
subtask_2_4.txt AC 21 ms 6524 KB
subtask_2_5.txt AC 3 ms 380 KB
subtask_2_6.txt AC 3 ms 380 KB
subtask_2_7.txt AC 3 ms 380 KB
subtask_2_8.txt AC 21 ms 6524 KB
subtask_2_9.txt AC 7 ms 1916 KB
subtask_3_1.txt WA 21 ms 6524 KB
subtask_3_10.txt WA 21 ms 6524 KB
subtask_3_11.txt AC 21 ms 6524 KB
subtask_3_12.txt WA 21 ms 6524 KB
subtask_3_13.txt WA 21 ms 6524 KB
subtask_3_14.txt WA 21 ms 6524 KB
subtask_3_15.txt WA 21 ms 6524 KB
subtask_3_16.txt WA 21 ms 6524 KB
subtask_3_17.txt WA 21 ms 6524 KB
subtask_3_18.txt WA 21 ms 6652 KB
subtask_3_19.txt WA 21 ms 6524 KB
subtask_3_2.txt WA 21 ms 6524 KB
subtask_3_20.txt WA 21 ms 6524 KB
subtask_3_21.txt WA 21 ms 6524 KB
subtask_3_3.txt WA 5 ms 1532 KB
subtask_3_4.txt WA 22 ms 7420 KB
subtask_3_5.txt WA 20 ms 7164 KB
subtask_3_6.txt WA 21 ms 6524 KB
subtask_3_7.txt WA 21 ms 6524 KB
subtask_3_8.txt WA 21 ms 6524 KB
subtask_3_9.txt WA 21 ms 6524 KB