edu158-B

好久没有做edu的b做到流汗了,很吊的一个思维(递推)题

给定一个now代表来到位置i,左边可用的芯片数,如果now>ai那么说明不会产生新的贡献,只需要更新一下now即可,否则我需要加上一个差值并更新now

cpp 复制代码
#include<bits/stdc++.h>
#define int long long
#define fi first
#define se second
#define endl '\n'
using namespace std;
typedef pair<int,int> pii;
const int N=1e6+10;
const int mod=998244353;
vector<int>pm;
int judge[N],nm[N],inv[N];
int Log2[N];
int kmi(int a,int b){
    int res=1;
    while(b){
        if(b&1) res=res*a%mod;
        a=a*a%mod;
        b>>=1;
    }
    return res;
}
void init(){
    nm[0]=inv[0]=1;
    for(int i=1;i<=1e6;i++){
        nm[i]=nm[i-1]*i%mod;
        inv[i]=kmi(nm[i],mod-2);
    }
}
void euler(int n){
    judge[1]=1;
    for(int i=2;i<=n;i++){
        if(!judge[i]){
            pm.push_back(i);
        }
        for(int j=0;pm[j]*i<=n;j++){
            judge[pm[j]*i]=1;
            if(i%pm[j]==0) break;
        }
    }
}
int C(int a,int b){
    return nm[a]*inv[a-b]%mod*inv[b]%mod;
}

void solve(){
    int n;cin>>n;
    int now=1;
    int ans=0;
    for(int i=1;i<=n;i++){
        int x;cin>>x;
        if(x<=now){
            now=x;
        }
        else{
            ans+=x-now;
            now=x;
        }
    }
    cout<<ans<<endl;
}
signed main(){
    ios::sync_with_stdio(0);cin.tie(0);
    // for(int i=2;i<=1e6;i++){
    //     Log2[i]=Log2[i/2]+1;
    // }
    int T=1;cin>>T;
    while(T--) solve();
    return 0;
}
相关推荐
布莱克6051 小时前
C/C++ 中变量的声明与定义:区别、联系与常见误区
c语言·开发语言·c++·声明·定义
沫璃染墨6 小时前
从零入门计算机网络系列(十二):HTTP长连接与会话管理详解——从Connection到Cookie与Session
linux·服务器·c++·tcp/ip·ubuntu·http·交互
xiaoye-duck7 小时前
《C++ 项目:手写大模型接入 SDK》DeepSeek接口设计(下):流式响应实现和测试
开发语言·网络·c++·语言模型
旖旎夜光8 小时前
【C++ 基础入门】类和对象(上):封装、对象模型与 this 指针
开发语言·c++·笔记·学习
小超人诞生日记9 小时前
C++ 智能指针的使用及其原理详解
c++·算法
akinggw10 小时前
libagentcore - 一个基于c++的AI多agent系统升级到2.0版本
开发语言·jvm·c++
繁星蓝雨11 小时前
C++设计原理———多重继承(虚基类、菱形继承、委托、重命名、基类和成员初始化)
c++·委托·多重继承·mi·显式初始化列·虚基类·对象布局
旖旎夜光11 小时前
【C++ 基础入门】命名空间、输入输出、缺省参数与函数重载
开发语言·c++·笔记·学习
扶尔魔ocy12 小时前
【QT入门到晋级】用开源的自定义控件开发
c++·qt·自定义控件
akinggw13 小时前
libsherpacore - 基于 sherpa-onnx 的 C++ 语音交互静态库
c++·交互·语音识别