Cod sursa(job #266298)

Utilizator cristiprgPrigoana Cristian cristiprg Data 25 februarie 2009 10:51:19
Problema Castel Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.46 kb
#include <cstdio>
#include <cstdlib>

#define DIM 152
#define INF 32000
int n, m, k, a[DIM][DIM], b[DIM][DIM];
const int vi[] = {-1, 0, 1, 0},
          vj[] = {0, 1, -1, 0};

void citire ()
{
    FILE *f = fopen("castel.in", "r");
    fscanf (f, "%d%d%d", &m, &n, &k);
    for (int i = 1; i <= m; i++)
        for (int j = 1; j <= n; j++)
             fscanf(f, "%d", &a[i][j]), b[i][j] = INF;
    fclose(f);
}

void afisare (FILE *f)
{

    for (int i = 1; i <= m; i++)
    {
        for (int j = 1; j <= n; j++)
             fprintf(f, "%3d", a[i][j]);
        fprintf(f, "\n");
    }    
}

bool OK (int i, int j)
{
    if (i < 1  || i > m || j < 1 || j > n)
        return false;
    
    
    
    int room = (i - 1) * n + j;
}


void lee ()
{
    int st, dr, coada[2][DIM * DIM], im, jm, i, j;
    st = dr = 1;
    i = k / m + 1;
    j = (k - 1) % n + 1;
    coada[0][1] = i;
    coada[1][1] = j;
    while (st <= dr)
    {
        i = coada[0][st];
        j = coada[1][st];
        for (int q = 1; q <= 2; q++) // twice
        for (int d = 0; d < 4; d++)
        {
             im = i + vi[d];
             jm = j + vj[d];
             if (OK (im, jm))  
             {
              // add coding here
             }
        }
        
        st++;
    }
    
}

int main ()
{
    citire ();
//  lee ();
    FILE *f = fopen("castel.out", "w");
    
    afisare(f);
    
    system("pause");
    return 0;
}