Cod sursa(job #1046742)

Utilizator Catalina_BrinzaBrinza Catalina Catalina_Brinza Data 3 decembrie 2013 14:16:33
Problema Plantatie Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.94 kb
//
//  main.cpp
//  rmq
//
//  Created by Catalina Brinza on 12/2/13.
//  Copyright (c) 2013 Catalina Brinza. All rights reserved.
//

#include <fstream>
using namespace std;
ifstream f("plantatie.in");
ofstream g("plantatie.out");


int main()
{int rmq[501][501][501];

    int n,i,x,m,y,l,ji,z;
    f>>n>>m;
    for(i=1;i<=n;++i)
        for (ji=1;ji<=n;++ji)
        f>>rmq[i][ji][1];
   
    for (l=2;l<=n;++l)
        for (i=1;i<=n;++i)
            for (ji=1;ji<=n;++ji)
        {
            rmq[i][ji][l]=rmq[i][ji][l-1];
            if (i+l-1<=n && ji+l-1<=n && rmq[i][ji][l]< rmq[i][ji+1][l-1])  rmq[i][ji][l]= rmq[i][ji+1][l-1];
        
            if (i+l-1<=n && ji+l-1<=n && rmq[i][ji][l]< rmq[i+1][ji][l-1])  rmq[i][ji][l]= rmq[i+1][ji][l-1];
    
            if (rmq[i][ji][l]<rmq[i+l-1][ji+l-1][1]) rmq[i][ji][l]=rmq[i+l-1][ji+l-1][1];
        }

    for (i=0;i<m;++i)
    {
        f>>x>>y>>z;

       g<<rmq[x][y][z]<<"\n";
    }
    return 0;
}