Cod sursa(job #1299828)

Utilizator ionut98Bejenariu Ionut Daniel ionut98 Data 23 decembrie 2014 21:25:40
Problema Dreptunghiuri Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include<fstream>
using namespace std;
int prod,maxprod,N,M,A,B,C,D,sum1[160009],sum2[160009];
long long ras;
int main()
{
    ifstream f("dreptunghiuri.in");
    ofstream g("dreptunghiuri.out");
    f>>N>>M;
    ras=N*(N-1)/2*M*(M-1)/2;
    for(A=1;A<N;A++)
      for(B=1;B+A+1<=N;B++)
      {
          sum1[A*B]+=N-A-B;
          if(A*B>maxprod)
            maxprod=A*B;
      }
    for(C=1;C<M;C++)
      for(D=1;C+D+1<=M;D++)
      {
          sum2[C*D]+=M-C-D;
          if(C*D>maxprod)
            maxprod=C*D;
      }
    for(prod=1;prod<=maxprod;prod++)
      ras+=sum1[prod]*sum2[prod];
    g<<ras;
    return 0;
}