Cod sursa(job #2227213)

Utilizator vladcainamisirVlad Cainamisir vladcainamisir Data 31 iulie 2018 15:23:40
Problema Carnati Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<cstdio>
#include<vector>
#include<algorithm>
using namespace std;
std :: pair <int, int> v[2005];int p[2005];int n, c;int f(int a){int mx = 0, s = 0;for(int i = 1; i <= n; i++){s = max(s - (v[i].first - v[i-1].first) * c, 0);if(a <= v[i].second)s += a;mx = max(mx, s - c);}return mx;}int main(){freopen("carnati.in","r",stdin);freopen("carnati.out","w",stdout);scanf("%d%d",&n ,&c);for(int i = 1; i <= n; i++)scanf("%d%d", &v[i].first , &v[i].second);std :: sort(v + 1, v + n + 1);int mx = 0;for(int i = 1; i <= n; i++)mx = std ::max(mx, f(v[i].second));printf("%d",mx);return 0;}