Cod sursa(job #1511010)

Utilizator JancuJancu Robert Jancu Data 25 octombrie 2015 21:46:38
Problema Cuburi2 Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.33 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("cuburi2.in");
ofstream g("cuburi2.out");

int ht[250000];
int n , m;

int main()
{
    int left , right , pozitie , timp ,timp_minim;
    // Citirea datelor din fisier

    f>>n;
    f>>m;
    for(int i=1;i<=n;i++)
        f>>ht[i];

    timp=0;

    for(int i=1;i<=m;i++)
    {
        f>> left;
        f>> right;
        for(int j=left;j<=right;j++)
        {
            if(j==left)
               {
                    for(int k=left;k<=right;k++)
                    {
                        if(k!=j)
                            timp=timp+ht[k]*(k-j);
                    }
                    timp_minim=timp;
                    pozitie = j;
               }
            else
            {
                 for(int k=left;k<=right;k++)
                    {
                        if(k>j)
                            timp=timp+ht[k]*(k-j);
                        else
                            timp=timp+ht[k]*(j-k);
                    }
                    if(timp_minim>timp)
                    {
                        timp_minim=timp;
                        pozitie = j;
                    }
            }
            timp=0;
        }
        g << pozitie << " " <<timp_minim << endl;
    }

    return 0;
}