Cod sursa(job #998942)

Utilizator DaNutZ2UuUUBB Bora Dan DaNutZ2UuU Data 18 septembrie 2013 20:01:29
Problema Bilute Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <cstdio>
using namespace std;
  
#define NMAX 30011
#define Big long long//////////////
  
int N,c[NMAX],l[NMAX],nr[NMAX];///////////
  
int main()
{
    freopen("bilute.in", "r", stdin);/////////////
    freopen("bilute.out", "w", stdout);
  
    scanf("%d", &N);
  
    Big cc = 0;
    for (int i = 1; i <= N; i++)
    {
        scanf("%d %d", &c[i], &l[i]);
        nr[i] = nr[i-1] + c[i];
        cc += l[i] * c[i] + (i - 1) * c[i];
    }
  
    Big rez = (Big) 1 << 60;
    int Rez = 0;
    for (int i = 1; i <= N; i++)
    {
        if (cc - l[i] * c[i] < rez) rez = cc - l[i] * c[i], Rez = i;
        cc += nr[i] - (nr[N] - nr[i]);
    }
  
    printf("%d %lld\n", Rez, rez);
}