Cod sursa(job #1184791)

Utilizator ArmandNMArmand Nicolicioiu ArmandNM Data 14 mai 2014 09:06:08
Problema Ferma2 Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.03 kb
#include <fstream>

const int NMAX = 1005;
const int inf = 0x3f3f3f3f;

using namespace std;
ifstream f("ferma2.in");
ofstream g("ferma2.out");

int N,K,ferma[NMAX][NMAX],summin,sum,total;

void triunghi(int x, int y)
{
    sum = 0;
    for (int i = x; i < x+N-K; ++i)
    {
        for (int j = y; j <= y+i-x; ++j)
        {
            sum += ferma[i][j];
        }
    }
}

int main()
{
    f >> N >> K;
    for (int i = 1; i <= N; ++i)
    {
        for (int j = 1; j <= i; ++j)
        {
            f >> ferma[i][j];
            total += ferma[i][j];
        }
    }

    summin = inf;

    for (int i = 1; i+N-K <= N+1; ++i)
    {
        for (int j = 1; j <= i; ++j)
        {
            triunghi(i,j);
            if (sum < summin)
                summin = sum;
        }
    }

    /*for (int i = 1; i <= N-1; ++i)
    {
        nr = ((N-i)*(N-i+1)*i) / 2;
        if (nr > nrmax)
            nrmax = nr;
    }*/

    g << total - summin;

    f.close();
    g.close();
    return 0;
}