提出 #4704278
ソースコード 拡げる
import Data.Int
import Data.List
modulo :: Int64
modulo = 10^9 + 7
newtype N = N Int64 deriving Eq
instance Show N where
show (N x) = show x
instance Num N where
N x + N y = N ((x + y) `rem` modulo)
N x - N y = N ((x - y) `mod` modulo)
N x * N y = N ((x * y) `rem` modulo)
fromInteger n = N (fromInteger (n `mod` fromIntegral modulo))
abs = undefined; signum = undefined
solution :: [(N,N,N)]
solution = (1,0,0):(4,0,1):(16,1,4):(61,3,15)
: zipWith4 (\(a1,b1,c1) (a2,b2,c2) (a3,b3,c3) (a4,b4,c4) -> (4*a1-3*a3+b3+c3-3*a4,a2-c2,a1-b1)) (drop 3 solution) (drop 2 solution) (tail solution) solution
main = do
n <- readLn :: IO Int
print $ case solution !! n of
(N x,_,_) -> x
提出情報
| 提出日時 | |
|---|---|
| 問題 | D - We Like AGC |
| ユーザ | mod_poppo |
| 言語 | Haskell (GHC 7.10.3) |
| 得点 | 400 |
| コード長 | 729 Byte |
| 結果 | AC |
| 実行時間 | 2 ms |
| メモリ | 508 KiB |
ジャッジ結果
| セット名 | Sample | All | ||||
|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 400 / 400 | ||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | a01, a02, a03 |
| All | a01, a02, a03, b04, b05, b06, b07, b08, b09, b10, b11, b12, b13 |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| a01 | AC | 2 ms | 508 KiB |
| a02 | AC | 1 ms | 508 KiB |
| a03 | AC | 2 ms | 508 KiB |
| b04 | AC | 2 ms | 508 KiB |
| b05 | AC | 2 ms | 508 KiB |
| b06 | AC | 2 ms | 508 KiB |
| b07 | AC | 2 ms | 508 KiB |
| b08 | AC | 2 ms | 508 KiB |
| b09 | AC | 2 ms | 508 KiB |
| b10 | AC | 2 ms | 508 KiB |
| b11 | AC | 2 ms | 508 KiB |
| b12 | AC | 2 ms | 508 KiB |
| b13 | AC | 2 ms | 508 KiB |