Cod sursa(job #2062731)

Utilizator maria_sinteaMaria Sintea maria_sintea Data 10 noiembrie 2017 19:33:26
Problema Indep Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <iostream>
#include <cstdio>
#define N 505

using namespace std;

int n, a[N], sol[N*2];

void citire()
{
    scanf("%d\n", &n);
    for(int i=1;i<=n;i++)
        scanf("%d\n", &a[i]);
}

int cmmdc(int a, int b)
{
    if(b==0)
        return a;
    return cmmdc(b, a%b);
}

void calcul()
{
    sol[a[1]]=1;
    for(int i=2;i<=n;i++)
    {
        for(int j=1;j<=1000;j++)
        {
            int c=cmmdc(j, a[i]);
            sol[c]=sol[j]+sol[c];
        }
        sol[a[i]]++;
    }
}

int main()
{
    freopen("indep.in", "r", stdin);
    freopen("indep.out", "w", stdout);

    citire();
    calcul();
    printf("%d", sol[1]);
    return 0;
}