Pagini recente » Cod sursa (job #497417) | Cod sursa (job #2977812) | Cod sursa (job #2805839) | Cod sursa (job #3193923) | Cod sursa (job #2978150)
#include <bits/stdc++.h>
using namespace std;
ifstream ci ("indep.in");
ofstream co ("indep.out");
const int N = 505;
int n, a[N], dp[N];
int gcd(int a, int b)
{
return b == 0 ? a : gcd(b, a % b);
}
int main()
{
ci >> n;
for (int i = 1; i <= n; i++)
{
ci >> a[i];
for (int j = i - 1; j >= 1; j--)
{
int t = gcd(a[i], a[j]);
if (t == 1)
{
dp[i] = max(dp[i], dp[j] + 1);
break;
}
}
dp[i]++;
}
int ans = 0;
for (int i = 1; i <= n; i++)
{
ans = max(ans, dp[i]);
}
co << ans << endl;
return 0;
}