构造题记录

思路:本题要求构造一个a和b数组相加为不递减序列,并且b数组的极差为最小的b数组。

可以通过遍历a数组并且每次更新最大值,并使得b数组为这个·最大值和当前a值的差。

复制代码
#include <bits/stdc++.h>
using namespace std;
#define int long long 
int a[200010];
signed main()
{
    int n;
    cin>>n;
    for (int i=1;i<=n;i++){
        cin>>a[i];
    }
    int maxn=a[1];
    for (int i=1;i<=n;i++){
        maxn=max(maxn,a[i]);
        cout<<maxn-a[i]<<" ";
    }
    
    
}
相关推荐
foundbug99930 分钟前
自适应滤除直达波干扰的MATLAB实现
开发语言·算法·matlab
MegaDataFlowers1 小时前
206.反转链表
数据结构·链表
CN-Dust2 小时前
【C++】while语句例题专题
数据结构·c++·算法
灵智实验室2 小时前
PX4位置速度估计技术详解(四):LPE 激光雷达高度融合的实现错误
算法·无人机·px 4
CQU_JIAKE3 小时前
【A】3742,3387,并查集
算法
gihigo19983 小时前
CHAN时延估计算法(二维/三维定位实现)
算法
freexyn3 小时前
Matlab自学笔记七十六:表达式的展开、因式分解、化简、合并同类项
笔记·算法·matlab
样例过了就是过了3 小时前
LeetCode热题 不同路径
c++·算法·leetcode·动态规划
dog2503 小时前
圆锥曲线和二次曲线
开发语言·网络·人工智能·算法·php
Wadli4 小时前
27.单调队列
算法