Cod sursa(job #2577959)

Utilizator LorenaMariaHantig Lorena LorenaMaria Data 10 martie 2020 10:43:39
Problema Indep Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.54 kb
#include <fstream>
#define ll unsigned long long
using namespace std;
ifstream in("indep.in");
ofstream out("indep.out");
ll n,a[501],d[1001][1001];
ll cmmdc(ll a,ll b)
{ if(b>a)
     swap(a,b);
  ll r=a%b;
  while(r!=0)
    a=b,b=r,r=a%b;
  return b;
}
int main()
{ in>>n;
  for(ll i=1;i<=n;i++)
    in>>a[i];
  d[a[1]][a[1]]=1;
  for(ll i=1;i<n;i++)
  { for(ll j=1;j<=1000;j++)
      d[a[i+1]][j]+=d[a[i]][j],d[a[i+1]][cmmdc(j,a[i])]+=d[a[i]][j];
  }
  out<<d[a[n]][1]<<'\n';
  in.close();
  out.close();
  return 0;
}