Cod sursa(job #2021015)

Utilizator andreicoman299Coman Andrei andreicoman299 Data 12 septembrie 2017 15:50:50
Problema Cuburi2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.7 kb
#include <stdio.h>
#include <stdlib.h>

#define MAXN 250000

int v[1 + MAXN], s[1 + MAXN], p[1 + MAXN];
int main(){
    FILE*fi,*fo;
    fi = fopen("cuburi2.in","r");
    fo = fopen("cuburi2.out","w");

    int n, m;
    fscanf(fi,"%d%d", &n, &m);
    for(int i = 1; i <= n; i++){
        fscanf(fi,"%d", &v[i]);
        s[i] = s[i - 1] + v[i];
        p[i] = p[i - 1] + v[i] * i;
    }

    for(int i = 1; i <= m; i++){
        int a, b;
        fscanf(fi,"%d%d", &a, &b);
        double pivot = (p[b] - p[a - 1])*1.0;
        pivot = pivot / (s[b] - s[a - 1]);
        pivot = pivot + 0.5;
        fprintf(fo,"%d 0\n", (int)pivot);
    }

    fclose(fi);
    fclose(fo);
    return 0;
}