社区讨论

最基础的差分题

学术版参与者 4已保存回复 4

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
4 条
当前快照
1 份
快照标识符
@lo8ijv8w
此快照首次捕获于
2023/10/27 19:11
2 年前
此快照最后确认于
2023/10/27 19:11
2 年前
查看原帖
各位大佬救救孩子吧!!!
快调崩溃了(只有60分)
CPP
#include<iostream>
using namespace std;
long long int n,p;

void ccf(long long int w[])
{
    long long int i;
    for(i=2;i<=n;i++){
        w[i]-=w[i-1];
    }
}

void cf(long long int a,long long int b,long long int c,long long int w[])
{
    w[a]+=c;
    w[b+1]-=c;
}

void qzh(long long int num[])
{
    long long int i;
    for(i=2;i<=n;i++){
        num[i]+=num[i-1];
    }
}

void cs(long long int w[],long long int a[],long long int b[],long long int c[])
{
    long long int i;
    ccf(w);
    for(i=1;i<=p;i++){
        cf(a[i],b[i],c[i],w);
    }
    qzh(w);
}


int main()
{
    cin>>n>>p;
    long long int w[n+2],a[p+1],b[p+1],c[p+1],i;
    for(i=1;i<=n;i++){
        cin>>w[i];
    }
    for(i=1;i<=p;i++){
        cin>>a[i]>>b[i]>>c[i];
    }
    cs(w,a,b,c);
    long long int mix=w[1];
    for(i=2;i<=n;i++){
        mix=min(mix,w[i]);
    }
    cout<<mix;




    cin>>n;



    return 0;
}

回复

4 条回复,欢迎继续交流。

正在加载回复...