結果

問題 No.2486 Don't come next to me
コンテスト
ユーザー ああいい
提出日時 2023-10-21 19:06:20
言語 PyPy3
(7.3.17)
コンパイル:
pypy3 -mpy_compile _filename_
実行:
pypy3 _filename_
結果
MLE  
実行時間 -
コード長 388 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 245 ms
コンパイル使用メモリ 85,364 KB
実行使用メモリ 672,776 KB
最終ジャッジ日時 2026-04-10 02:07:04
合計ジャッジ時間 7,331 ms
ジャッジサーバーID
(参考情報)
judge1_0 / judge3_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample -- * 3
other MLE * 1 -- * 19
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

N,M = map(int,input().split())
A = list(map(int,input().split()))

memo = dict()

def calc(n):
	if n == 1:return 1
	elif n == 2:return 2
	else:
		if n in memo:
			return memo[n]
		
		if n % 2 == 1:
			u = 2 * calc(n // 2)
			memo[n] = u
			return u
		else:
			u = 2 * (calc(n // 2) + calc(n //2 - 1))
			memo[n] = u
			return u
ans = 0
for i in range(M - 1):
	ans += calc(A[i + 1] - A[i])
0