結果
| 問題 | No.793 うし数列 2 | 
| コンテスト | |
| ユーザー |  nadeshino | 
| 提出日時 | 2019-02-23 09:45:03 | 
| 言語 | Nim (2.2.0) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 2 ms / 2,000 ms | 
| コード長 | 1,243 bytes | 
| コンパイル時間 | 3,081 ms | 
| コンパイル使用メモリ | 71,040 KB | 
| 実行使用メモリ | 5,376 KB | 
| 最終ジャッジ日時 | 2024-07-01 19:27:08 | 
| 合計ジャッジ時間 | 4,060 ms | 
| ジャッジサーバーID (参考情報) | judge4 / judge2 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 2 | 
| other | AC * 21 | 
コンパイルメッセージ
/home/judge/data/code/Main.nim(1, 19) Warning: Use the new 'sugar' module instead; future is deprecated [Deprecated] /home/judge/data/code/Main.nim(1, 8) Warning: imported and not used: 'algorithm' [UnusedImport] /home/judge/data/code/Main.nim(1, 19) Warning: imported and not used: 'future' [UnusedImport] /home/judge/data/code/Main.nim(1, 27) Warning: imported and not used: 'hashes' [UnusedImport]
ソースコード
import algorithm, future, hashes, macros, math, sequtils, sets, strutils, tables, unicode
template readString: string = stdin.readLine
template readStrings: seq[string] = stdin.readLine.split
template readInt: int = stdin.readLine.parseInt
template readInts: seq[int] = readLine(stdin).split(" ").map(parseInt)
template readFloat: float = stdin.readLine.parseFloat
template readFloats: seq[float] = stdin.readLine.split.map(parseFloat)
template times(n: int, body: untyped): untyped = (for _ in 0..<n: body)
proc newSeq2[T](n1, n2: Natural): seq[seq[T]] = newSeqWith(n1, newSeq[T](n2))
proc newSeq3[T](n1, n2, n3: Natural): seq[seq[seq[T]]] = newSeqWith(n1, newSeqWith(n2, newSeq[T](n3)))
macro unpack*(rhs: seq, cnt: static[int]): auto =
  let t = genSym(); result = quote do:(let `t` = `rhs`;())
  for i in 0..<cnt: result[0][1].add(quote do:`t`[`i`])
# -------------------------------------------------- #
proc modPow(A, N, P: int): int =
  var (a, n, p) = (A, N, P)
  result = 1
  while n > 0:
    if (n and 1) == 1:
      result = result * a mod P
    a = a * a mod P
    n = n shr 1
  return result
const P = 10 ^ 9 + 7
var N = readInt
var res = ((((4 * modPow(10, N, P) mod P) - 1 + P) mod P) * modPow(3, P - 2, P)) mod P
echo res
            
            
            
        