Cod sursa(job #3319207)
| Utilizator | Data | 31 octombrie 2025 09:52:20 | |
|---|---|---|---|
| Problema | Indep | Scor | 0 |
| Compilator | py | Status | done |
| Runda | Arhiva de probleme | Marime | 0.41 kb |
def gcd(a, b):
while b > 0:
r = a % b
a = b
b = r
return a
with open("indep.in", "r") as f:
n = int(f.read())
a = [0]
for i in range(n):
a.append(int(x=f.read()))
maxx = max(a)
dp = [0] * (maxx + 1)
for i in range(1, n + 1):
for j in range(1, maxx + 1):
dp[gcd(j, a[i])] += dp[j]
dp[a[i]] += 1
with open("indep.out", "w") as g:
g.write(dp[1])