代码如下:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n;
int i;
int *x,*y;
int A = 0;
int kj = 0;
scanf("%d",&n);
x = (int*)malloc(sizeof(int)*n);
y = (int*)malloc(sizeof(int)*n);
for(i=0;i<n;i++)
{
scanf("%d %d",&x[i],&y[i]);
if(x[i] > A)
{
kj = x[i] - A;
A = A + kj;
}
A = A+y[i];
}
printf("%d\n",kj);
free(x);
free(y);
return 0;
}
这道题是北理工原创的
找不到题解的
前面有个人发的链接的题目和这道题不一样
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long a[1000100],b[1000100],n,k,z=0;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>a[i]>>b[i];
}
k=a[0];
z+=a[0];
for(int i=0;i<=n;i++)
{
if(k>=a[i])
{
k+=b[i];
}
else
{
z+=(a[i]-k);
}
}
cout<<z<<endl;
}