結果

問題 No.167 N^M mod 10
ユーザー lam6er
提出日時 2025-03-20 18:42:24
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 39 ms / 1,000 ms
コード長 1,021 bytes
コンパイル時間 151 ms
コンパイル使用メモリ 82,484 KB
実行使用メモリ 54,152 KB
最終ジャッジ日時 2025-03-20 18:42:37
合計ジャッジ時間 2,040 ms
ジャッジサーバーID
(参考情報)
judge5 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 27
権限があれば一括ダウンロードができます

ソースコード

diff #
プレゼンテーションモードにする

def mod_of_large_number(m_str, T):
if T == 4:
if len(m_str) >= 2:
last_part = m_str[-2:]
else:
last_part = m_str
num = int(last_part)
return num % 4
elif T == 2:
last_digit = m_str[-1]
return int(last_digit) % 2
else:
return 0 # This case shouldn't occur as per our problem constraints
n = input().strip()
m = input().strip()
if not n or not m:
print(1)
exit()
d = int(n[-1])
if m == '0':
print(1)
else:
if d == 0:
print(0)
elif d == 1:
print(1)
elif d == 5:
print(5)
elif d == 6:
print(6)
else:
if d in {2, 3, 7, 8}:
T = 4
mod_val = mod_of_large_number(m, T)
exponent = mod_val if mod_val != 0 else T
elif d in {4, 9}:
T = 2
mod_val = mod_of_large_number(m, T)
exponent = mod_val if mod_val != 0 else T
result = pow(d, exponent, 10)
print(result)
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
0