Cod sursa(job #3250316)

Utilizator Mihai_AritonMihai Ariton Mihai_Ariton Data 20 octombrie 2024 10:47:43
Problema Bilute Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.78 kb
#include <bits/stdc++.h>
#define int long long
using namespace std;

struct fact
{
    int x, y;
}v[30005];
int st[30005], dr[30005];
signed main()
{
    ifstream cin("bilute.in");
    ofstream cout("bilute.out");
    
    int n, s=0, a=0, b=0, minnr=INT_MAX, p=0;
    cin>>n;
    for(int i=1; i<=n; i++)
    {
        cin>>v[i].x>>v[i].y;
        s=s+v[i].x*v[i].y;
    }
    a=0;b=0;
    for(int i=1; i<=n; i++)
    {
        a=a+b;
        st[i]=a;
        b=b+v[i].x;
    }
    a=0;b=0;
    for(int i=n; i>=1; i--)
    {
        a=a+b;
        dr[i]=a;
        b=b+v[i].x;
    }
    for(int i=1; i<=n; i++)
    {
        a=s-v[i].x*v[i].y;
        a=a+st[i]+dr[i];
        if(a<minnr)
        {
            minnr=a;
            p=i;
        }
    }
    cout<<p<<" "<<minnr;

    return 0;
}