求助关于标注的那一行为什么是 j=(e-s)/(r-l)而不是j=(e-s)/(r-l+1)
#include<bits/stdc++.h>
using namespace std;
#define int long long
const long long LLM=9223372036854775807;
const int IM=2147483647;
const int N=10000005;
inline int read(){int x=0,y=1;char c=getchar();while(c<'0'||c>'9'){if(c=='-') y=-y;c=getchar();}while(c>='0'&&c<='9'){x=x*10+(c^'0');c=getchar();}return x*y;}
int n,m,d[N];
signed main()
{
n=read();
m=read();
for(int p=1;p<=m;p++)
{
int l=read(),r=read(),s=read(),e=read();
int j=(e-s)/(r-l);//这里
d[l]+=s;
d[l+1]+=j-s;
d[r+1]-=j+e;
d[r+2]+=e;
}
int ans=0,maxn=0,op=0,p=0;
for(int i=1;i<=n;i++)
{
op+=d[i];
p+=op;
ans=(ans?(ans^p):p);
maxn=maxn>p?maxn:p;
}
printf("%lld %lld\n",ans,maxn);
return 0;
}