結果
問題 | No.306 さいたま2008 |
ユーザー |
|
提出日時 | 2016-08-13 20:49:55 |
言語 | Haskell (9.10.1) |
結果 |
AC
|
実行時間 | 9 ms / 2,000 ms |
コード長 | 944 bytes |
コンパイル時間 | 16,089 ms |
コンパイル使用メモリ | 255,544 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2025-02-14 12:13:40 |
合計ジャッジ時間 | 5,570 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 26 |
コンパイルメッセージ
Loaded package environment from /home/judge/.ghc/x86_64-linux-9.10.1/environments/default <no location info>: warning: [GHC-98887] -XGeneralizedNewtypeDeriving is not allowed in Safe Haskell; ignoring -XGeneralizedNewtypeDeriving [1 of 2] Compiling Main ( Main.hs, Main.o ) Main.hs:11:4: warning: [GHC-94817] [-Wtabs] Tab character found here, and in 39 further locations. Suggested fix: Please use spaces instead. | 11 | [] !-! _ = Nothing | ^^^^^ [2 of 2] Linking a.out
ソースコード
{-# LANGUAGE Safe #-} {-# LANGUAGE PatternGuards #-} import qualified Data.Text as T import qualified Data.Text.IO as TI import qualified Data.List as L import Data.Monoid import Data.Maybe import Control.Applicative (!-!)::[a]->Int->Maybe a [] !-! _ = Nothing (x:xs) !-! 0 = Just x (x:xs) !-! n = xs !-! (n-1) (<$~>)::Functor f => f a -> (a -> b) -> f b (<$~>)=flip (<$>) maybeRead s |[(x,"")]<-(reads s)=Just x |otherwise = Nothing getLines::Int->IO T.Text getLines 1 = TI.getLine getLines n = (<>) <$> ((<>) <$> TI.getLine <*> return (T.pack " ")) <*> (getLines$n-1) run main_f n= getLines n <$~> T.split (==' ') <$~> fmap T.unpack <$~> main_f <$~> fmap show <$~> fromMaybe "error" >>= putStrLn main_ list = do let get n = maybeRead=<<(list !-! n)::Maybe Float x1<-get 0 y1<-get 1 x2<-get 2 y2<-get 3 let x_distance = x1+x2 let y_distance = y2-y1 return$x1/x_distance*y_distance+y1 main = run main_ 2