Cod sursa(job #2070497)

Utilizator Valentin0709Datcu George Valentin Valentin0709 Data 19 noiembrie 2017 17:09:55
Problema Heavy metal Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include<stdio.h>
#include<algorithm>
using namespace std;

FILE*f=fopen("heavymetal.in","r");
FILE*g=fopen("heavymetal.out","w");

int n;
long long t;

struct formatie {
    int t1,t2;
} a[100005];

int comp(formatie a,formatie b) {
    return a.t2<b.t2||(a.t2==b.t2&&a.t1>b.t1);
}

void citire() {
    int i;

    fscanf(f,"%d",&n);
    for(i=1;i<=n;i++) fscanf(f,"%d %d",&a[i].t1,&a[i].t2);
}

void solve() {
    int i,u=0;

    sort(a+1,a+n+1,comp);
    for(i=1;i<=n;i++)
        if(a[i].t1>=a[u].t2) {
            t+=a[i].t2-a[i].t1;
            u=i;
        }
}

int main() {

    citire();
    solve();
    fprintf(g,"%lld",t);

    return 0;
}