Cod sursa(job #1147372)

Utilizator tudi98Cozma Tudor tudi98 Data 19 martie 2014 19:34:34
Problema Teren Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <fstream>
#include <bitset>
#include <algorithm>
using namespace std;
ifstream f("teren.in");
ofstream g("teren.out");
bitset<301> a[301];
int n,m,x,sum,sol=0,st,dr,i,j,s[301][301];

int main(){

    f>>n>>m>>x;
    for(i=1;i<=n;i++)
    for(j=1;j<=m;j++)
    f>>st,a[i][j]=st,s[i][j]=s[i-1][j]+a[i][j];

    for(i=1;i<=n;i++)
    for(j=i;j<=n;j++){
        st=1; sum=0;
        for(dr=1;dr<=m;dr++){
        sum+=s[j][dr]-s[i-1][dr];
        while(sum>x){
            sum-=s[j][st]-s[i-1][st];
            st++;
        }
        if(st<=dr) sol=max(sol,(dr-st+1)*(j-i+1));
        }
        }

    g<<sol;
    }