結果
問題 | No.2929 Miracle Branch |
ユーザー |
![]() |
提出日時 | 2024-10-14 19:56:30 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,525 bytes |
コンパイル時間 | 211 ms |
コンパイル使用メモリ | 82,560 KB |
実行使用メモリ | 106,300 KB |
最終ジャッジ日時 | 2024-10-14 19:57:34 |
合計ジャッジ時間 | 63,053 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 41 WA * 2 |
ソースコード
def prime_numbers(m):primes = set()n = 2while n<=m:if all(n % i != 0 for i in primes):primes.add(n)n += 1return primesX = int(input())tmp_prime = list()if X!=1:primes = prime_numbers(100000)while True:ok = Falsefor i in primes:if X%i==0:ok = TrueX //= itmp_prime.append(i)breakif not ok:break#print(tmp_prime)prime = list()cnt_2 = 0for i in tmp_prime:if i==2:if cnt_2==1:prime.append(4)cnt_2 = 0else:cnt_2 += 1else:if cnt_2==2:prime.append(4)cnt_2 = 0elif cnt_2==1:prime.append(2)cnt_2 = 0prime.append(i)if X!=1:prime.append(X)#print(prime)#print("#", len(prime), sum(prime))else:prime = [1]if X>2*10**5 or len(prime)+sum(prime)>2*10**5:print(-1)exit()N = len(prime)+sum(prime)G = [ [] for _ in range(N+1)]idx = len(prime)for i in range(1, len(prime)+1):for j in range(prime[i-1]):idx += 1G[i].append(idx)print(N)for i in range(1, len(prime)):G[i].append(i+1)for i in range(1, N+1):for j in G[i]:print(i,j)col = list()for i in range(len(prime)):col.append("b")for i in range(sum(prime)):col.append("g")print(*col)