Cod sursa(job #798887)
Utilizator | Data | 17 octombrie 2012 15:21:24 | |
---|---|---|---|
Problema | Infasuratoare convexa | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.57 kb |
#include <iostream>
#include <stdio.h>
using namespace std;
FILE *f=fopen("intersectii.in","r");
FILE *g=fopen("intersectii.out","w");
int bif[100000],i,j,w,h,n,x,r;
int cmmdc(int a, int b)
{
r=1;
while (r!=0){
r=a % b;
a=b;
b=r;
}
return a;
}
int main()
{
fscanf(f,"%d%d%d",&w,&h,&n);
for (i=1; i<w;i++)
for (j=1;j<h;j++)
{
bif[i+j-cmmdc(i,j)]=bif[i+j-cmmdc(i,j)]+4;
}
for (i=1;i<=n;i++){
fscanf(f,"%d",&x);
fprintf(g,"%d\n",bif[x]);
}
return 0;
}