結果
問題 | No.510 二次漸化式 |
ユーザー | kjnho |
提出日時 | 2017-04-29 00:13:41 |
言語 | Python3 (3.12.2 + numpy 1.26.4 + scipy 1.12.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 1,499 bytes |
コンパイル時間 | 462 ms |
コンパイル使用メモリ | 12,672 KB |
実行使用メモリ | 81,060 KB |
最終ジャッジ日時 | 2024-09-13 19:32:12 |
合計ジャッジ時間 | 8,656 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | TLE | - |
testcase_01 | -- | - |
testcase_02 | -- | - |
testcase_03 | -- | - |
testcase_04 | -- | - |
testcase_05 | -- | - |
testcase_06 | -- | - |
testcase_07 | -- | - |
testcase_08 | -- | - |
testcase_09 | -- | - |
testcase_10 | -- | - |
testcase_11 | -- | - |
testcase_12 | -- | - |
testcase_13 | -- | - |
testcase_14 | -- | - |
testcase_15 | -- | - |
testcase_16 | -- | - |
testcase_17 | -- | - |
testcase_18 | -- | - |
testcase_19 | -- | - |
testcase_20 | -- | - |
testcase_21 | -- | - |
testcase_22 | -- | - |
testcase_23 | -- | - |
testcase_24 | -- | - |
testcase_25 | -- | - |
testcase_26 | -- | - |
testcase_27 | -- | - |
testcase_28 | -- | - |
testcase_29 | -- | - |
testcase_30 | -- | - |
testcase_31 | -- | - |
testcase_32 | -- | - |
testcase_33 | -- | - |
testcase_34 | -- | - |
testcase_35 | -- | - |
ソースコード
from pydoc import help # {{{ import re from scipy import integrate from operator import itemgetter from collections import Counter from collections import deque import fractions from heapq import heappop, heappush, heapify import math import sys from collections import defaultdict as dd import itertools import array from copy import deepcopy as dcopy import numpy as np # }}} # TODO watchdoc timerを実装する. # TODO meauring memory and time from scipy.special import factorial import sympy import math def main(): n = int(input()) Q = int(input()) Ai = dd(int) B = [1]* (n+1) X = [0]* (n+1) Y = [0]* (n+1) for q in range(Q): tmp = input() if tmp[0] == "a": direction, k = tmp.split() k = int(k) answer = 1 for key, value in Ai.items(): if k >= key: answer += value answer %= 10**9 + 7 else: break print(answer) continue direction, k, param = tmp.split() param = int(param) k = int(k) if direction == "y": tmp = B[k+1]**2 B[k+1] += (param - Y[k]) * B[k] Ai[k+2] += X[k+1] * (B[k+1]**2 - tmp) Y[k] = param elif direction == "x": Ai[k+1] += (param - X[k]) * (B[k]**2) X[k] = param # print("Ai",Ai) # print("B",B) if __name__ == "__main__": main()