• P1969 积木大赛


    题意:给你一段序列,一次操作:[l,r]内所有数+1

       初始序列全为0

       现在给你最后序列,问最少操作几次能达到这样的序列

    蒟蒻表示秒想到------差分啊

    每次差分必有一个+1,一个-1

    把差分数组求出来,累加(绝对值之和),

    每次操作一个+1,一个-1,所以最后/2就是答案。。。。

    #include<cstdio>
    #include<iostream>
    #include<cstring>
    #include<cctype>
    #include<algorithm>
    using namespace std;
    #define int long long
    #define olinr return
    #define _ 0
    #define love_nmr 0
    #define DB double
    int cha[105050];
    inline int read()
    {
        int x=0,f=1;
        char ch=getchar();
        while(!isdigit(ch))
        {
            if(ch=='-')
                f=-f;
            ch=getchar();
        }
        while(isdigit(ch))
        {
            x=(x<<1)+(x<<3)+(ch^48);
            ch=getchar();
        }
        return x*f;
    }
    inline void put(int x)
    {
        if(x<0)
        {
            x=-x;
            putchar('-');
        }
        if(x>9)
            put(x/10);
        putchar(x%10+'0');
    }
    inline int abss(int x)
    {
        if(x<0) return -x;
        return x;
    }
    int n;
    signed main()
    {
        n=read();
        int x=0,y=0;
        for(int i=1;i<=n;i++)
        {
            x=read();
            cha[i]=x-y;
            y=x;
        }
        cha[n+1]=-y;
        int ans=0;
        for(int i=1;i<=n+1;i++)
            ans+=abss(cha[i]);
        put(ans>>1);
        olinr ~~(0^_^0)+love_nmr;
    }
  • 相关阅读:
    高德地图API,获取和设置zoom级别和中心点
    高德地图API注册使用教程简答演示
    HTML5 视频流行插件之video.js
    audio实现自定义音频播放器
    HTML5 audio API事件
    HTML5之audio属性
    GitLab的安装及使用教程
    设计模式六大原则(PHP)
    面向对象设计
    自定义的异常类
  • 原文地址:https://www.cnblogs.com/olinr/p/9548916.html
Copyright © 2020-2023  润新知