結果

問題 No.3260 岩井スターグラフ
ユーザー yamasakih
提出日時 2025-09-07 10:19:41
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
AC  
実行時間 1,633 ms / 2,000 ms
コード長 1,046 bytes
コンパイル時間 507 ms
コンパイル使用メモリ 12,160 KB
実行使用メモリ 13,696 KB
最終ジャッジ日時 2025-09-07 10:20:25
合計ジャッジ時間 42,427 ms
ジャッジサーバーID
(参考情報)
judge / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 36
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys
from collections import *
from functools import cache, partial
from itertools import *
from pprint import pprint
from typing import Any, Final

try:
    from icecream import ic
except ImportError:  # Graceful fallback if IceCream isn't installed.
    ic = lambda *a: None if not a else (a[0] if len(a) == 1 else a)  # noqa
debug = partial(print, file=sys.stderr)
dpprint = partial(pprint, stream=sys.stderr)
sys.setrecursionlimit(10 ** 6)
MOD=998244353

X, Y, N = map(int, input().split())

def dist_to_zero(v: int, Y: int) -> int:
    return (v - 1) % Y + 1


def is_same_branch(u: int, v: int, Y: int) -> bool:
    return (u - 1) // Y == (v - 1) // Y

ic(X, Y)

for _ in range(N):
    u, v = map(int, input().split())
    if u == 0 and v == 0:
        print(0)
        continue
    if u == 0:
        print(dist_to_zero(v, Y))
        continue
    if v == 0:
        print(dist_to_zero(u, Y))
        continue
    if is_same_branch(u, v, Y):
        print(abs(u - v))
    else:
        print(dist_to_zero(u, Y) + dist_to_zero(v, Y))
0