Cod sursa(job #2591774)

Utilizator ioana.jianuIoana Jianu ioana.jianu Data 31 martie 2020 11:41:40
Problema Indep Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <iostream>
#include <stdio.h>

using namespace std;

int cmmdc (int a, int b) {
    int r;
    while (b > 0) {
        r = a % b;
        a = b;
        b = r;
    }
    return a;
}

int d[1005];

int main() {

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

    int n, i, j, nr;

    scanf ("%d", &n);
    for (i = 1; i <= n; i++) {
        scanf ("%d", &nr);
        for (j = 1; j <= 1000; j++)
            if (d[j] > 0)
                d[cmmdc(nr, j)] += d[j];
        d[nr]++;
    }

    printf ("%d", d[1]);

    return 0;
}