結果
問題 |
No.2519 Coins in Array
|
ユーザー |
|
提出日時 | 2023-10-28 00:45:28 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 223 ms / 2,000 ms |
コード長 | 1,583 bytes |
コンパイル時間 | 178 ms |
コンパイル使用メモリ | 82,428 KB |
実行使用メモリ | 106,908 KB |
最終ジャッジ日時 | 2024-09-25 15:51:07 |
合計ジャッジ時間 | 7,355 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 37 |
ソースコード
from collections import deque import math import sys input = sys.stdin.readline N = int(input()) A = list(map(int, input().split())) ans = [] if N==2: g = math.gcd(A[0], A[1]) ans.append((1, 2)) if g==1: m = (A[0]-1)*(A[1]-1) else: m = 0 print(m) for i, j in ans: print(i, j) elif N==3: g = math.gcd(A[0], A[1]) if g==1: m = (A[0]-1)*(A[1]-1) else: m = 0 g = math.gcd(m, A[2]) if g==1: m = (m-1)*(A[2]-1) else: m = 0 g = math.gcd(A[0], A[2]) if g==1: m2 = (A[0]-1)*(A[2]-1) else: m2 = 0 g = math.gcd(m2, A[1]) if g==1: m2 = (m2-1)*(A[1]-1) else: m2 = 0 g = math.gcd(A[1], A[2]) if g==1: m3 = (A[1]-1)*(A[2]-1) else: m3 = 0 g = math.gcd(m3, A[0]) if g==1: m3 = (m3-1)*(A[0]-1) else: m3 = 0 if m<m2: if m<m3: print(m) print(1, 2) print(1, 2) else: print(m3) print(2, 3) print(1, 2) else: if m2<m3: print(m2) print(1, 3) print(1, 2) else: print(m3) print(2, 3) print(1, 2) else: A = deque(A) while len(A)>1: ai = A.popleft() aj = A.popleft() ans.append((1, 2)) g = math.gcd(ai, aj) if g==1: m = (ai-1)*(aj-1) else: m = 0 A.append(m) print(A[0]) for i, j in ans: print(i, j)