Cod sursa(job #1043503)

Utilizator romykPrehari Romica romyk Data 28 noiembrie 2013 18:06:23
Problema Gropi Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.01 kb
#include <iostream>
#include<fstream>
#include<malloc.h>
using namespace std;

fstream g("gropi.out",ios::out);
char *a[3];
int n,t;
int m,i;
long j,c,x1,x2,y1,y2,k;
int main()
{
    freopen("gropi.in","r",stdin);
    freopen("gropi.out","w",stdout);
    scanf("%li",&c);
    a[1]=(char *)malloc(1+c*sizeof(char));
    a[2]=(char *)malloc(1+c*sizeof(char));
     for(i=0;i<c;i++)
   { a[1][i]=' ';
   a[2][i]=' ';}
   scanf("%i",&n);
   for(i=0;i<n;i++)
   {
       scanf("%li %li",&x1,&y1);
       a[x1][y1]='*';
   }
   scanf("%i",&m);
for(i=0;i<m;i++)
{
    scanf("%li %li %li %li",&x1,&y1,&x2,&y2);
    t=0;
    if(y2<y1)
    {
        k=y2;
        y2=y1;
        y1=k;
        k=x2;
        x2=x1;
        x1=k;
    }
    for(j=y1;j<=y2;j++)
    {
        if(a[x1][j]=='*')
        {
            if(x1==1)
                x1=2;
            else
                x1=1;
        t++;
        }
        t++;
    }
    if(x1!=x2)
        t++;
    cout<<t<<endl;
}
    return 0;
}