Cod sursa(job #1673432)

Utilizator stoianmihailStoian Mihail stoianmihail Data 3 aprilie 2016 19:49:42
Problema Plantatie Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <stdio.h>
#include <stdlib.h>

#define Nadejde 500

int N, M;
int val[Nadejde + 1][Nadejde + 1];

int MAX(int X, int Y) {
  return X > Y ? X : Y;
}

int getAnswer(int l, int c, int k) {
  int i, j, max = 0;

  for (i = 0; i < k; i++) {
    for (j = 0; j < k; j++) {
      max = MAX(max, val[i + l][j + c]);
    }
  }
  return max;
}

int main(void) {
  int i, j, l, c, k;
  FILE *f = fopen("plantatie.in", "r");

  fscanf(f, "%d %d", &N, &M);
  for (i = 1; i <= N; i++) {
    for (j = 1; j <= N; j++) {
      fscanf(f, "%d", &val[i][j]);
    }
  }

  freopen("plantatie.out", "w", stdout);
  for (i = 1; i <= M; i++) {
    fscanf(f, "%d %d %d", &l, &c, &k);
    fprintf(stdout, "%d\n", getAnswer(l, c, k));
  }
  fclose(f);
  fclose(stdout);

  /// Multumim Doamne!
  puts("Doamne ajuta!");
  return 0;
}