結果
| 問題 |
No.3091 The Little Match Boy
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2025-04-06 16:10:34 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
MLE
|
| 実行時間 | - |
| コード長 | 1,693 bytes |
| コンパイル時間 | 236 ms |
| コンパイル使用メモリ | 82,144 KB |
| 実行使用メモリ | 849,604 KB |
| 最終ジャッジ日時 | 2025-04-06 16:10:45 |
| 合計ジャッジ時間 | 9,282 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 40 MLE * 1 -- * 21 |
ソースコード
# https://atcoder.jp/contests/QUPC2024/tasks/QUPC2024_a
# R
# cSpell:disable
from bisect import bisect_left, bisect_right
from collections import Counter, defaultdict, deque
from copy import copy
from functools import lru_cache
from itertools import combinations, permutations
from math import ceil, log, log2, log10
from sys import setrecursionlimit, stdin
def flatten(N):
from itertools import chain
return chain.from_iterable(N)
def getPrimes(n: int):
N = list(3, range(n), 2)
P = [2]
p = 2
V = int(pow(N, 0.5))
while p < V:
p = N.pop(0)
N = [t for t in N if N % p]
P.append(p)
return P
def getFactor(n: int):
P = []
V = int(pow(n, 0.5))
while not n % 2:
n //= 2
P.append(2)
for k in range(3, V + 1, 2):
while not n % k:
n //= k
P.append(k)
return P
def dijkstra(f, p, E):
for q in E[p]:
if f != q:
return dijkstra(p, q, E)
setrecursionlimit(10**8)
def ins(): return stdin.readline()[:-1]
def inms(): return ins().split()
def ini(): return int(ins())
def inmi(): return map(int, inms())
def inf(): return float(ins())
def inmf(): return map(float, inms())
def out(*args, sep=" ", end="\n"): print(*args, sep=sep, end=end)
MOD = 1000000007
MAX = 1 << 63
MIN = -1 << 63
N, M = inmi()
S = [*inmi()]
V = [*range(0, N + 1)]
F = defaultdict(tuple)
for i, s in enumerate(S):
F[i] = (V[s], V[s + 1])
V[s], V[s + 1] = V[s + 1], V[s]
A = set()
I = {v: i for i, v in enumerate(V)}
for i, s in enumerate(S):
v = copy(V)
v[I[F[i][0]]], v[I[F[i][1]]] = v[I[F[i][1]]], v[I[F[i][0]]]
A.add(tuple(v))
print(len(A))