結果
問題 |
No.2929 Miracle Branch
|
ユーザー |
|
提出日時 | 2025-02-07 14:35:26 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 711 bytes |
コンパイル時間 | 340 ms |
コンパイル使用メモリ | 82,720 KB |
実行使用メモリ | 83,712 KB |
最終ジャッジ日時 | 2025-02-07 14:35:38 |
合計ジャッジ時間 | 11,944 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 22 WA * 21 |
ソースコード
x=int(input()) if x>10**10: print(-1) exit() def make_divisors(n): lower_divisors , upper_divisors = [], [] i = 1 while i*i <= n: if n % i == 0: lower_divisors.append(i) if i != n // i: upper_divisors.append(n//i) i += 1 return lower_divisors Y=make_divisors(x) a,b=Y[-1],x//Y[-1] if min(a+b+2,x+1)>2*10**5: print(-1) exit() if a+b+2<x+1: print(a+b+2) print(1,2) for i in range(3,3+a): print(1,i) for i in range(2+a+1,3+a+b): print(2,i) ans=["b"]*2+["g"]*(a+b) print(*ans) else: print(x+1) for i in range(2,2+x): print(1,i) ans = ["b"] + ["g"] *x print(*ans)