Cod sursa(job #1146765)

Utilizator lacraruraduRadu Matei Lacraru lacraruradu Data 19 martie 2014 11:37:48
Problema Indep Scor 5
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <fstream>

using namespace std;

ifstream in("indep.in");
ofstream out("indep.out");

int v[501];
long long d[501][1001];

int cmmdc(int a , int b)
{
    int c;

    while(b)
    {
        c = a % b;
        a = b;
        b = c;
    }

    return a;
}

int main()
{
    int n , i , j , k;

    in>>n;

    for (i = 1 ; i <= n ; i++)
        in>>v[i];

    d[1][v[1]] = 1;

    for (i = 2 ; i <= n ; i++)
    {
        for (j = 1 ; j <= 1000 ; j++)
        {
            d[i][j] += d[i - 1][j];
            d[i][cmmdc(v[i] , j)] += d[i - 1][j];
        }
    }

    out<<d[n][1]<<'\n';
    return 0;
}