• [NOIP2013D2]


    T1

    Problem

    洛谷

    Solution

    这是线性扫描题吧。
    就从1 ~ n 循环,若比起面高,则 ans += h[i] - h[i - 1]。

    Code

    #include<cmath>
    #include<cstdio>
    #include<cstring>
    #include<iostream>
    #include<algorithm>
    using namespace std;
    #define ll long long
    ll read()
    {
        ll x = 0; int zf = 1; char ch;
        while (ch != '-' && (ch < '0' || ch > '9')) ch = getchar();
        if (ch == '-') zf = -1, ch = getchar();
        while (ch >= '0' && ch <= '9') x = x * 10 + ch - '0', ch = getchar();
        return x * zf;
    }
    int x[100005];
    
    int main()
    {
        int n = read();
        x[0] = 0;
        int ans = 0;
        for (int i = 1; i <= n; i++)
        {
            x[i] = read();
            if (x[i] > x[i - 1]) ans += x[i] - x[i - 1];
        }
        printf("%d
    ", ans);
    }
    

    T2

    Problem

    洛谷

    Solution

    其实就是求一个数列里拐点数+1,然后O(n)扫一遍就好了。

    Code

    #include<cmath>
    #include<cstdio>
    #include<cstring>
    #include<iostream>
    #include<algorithm>
    using namespace std;
    #define ll long long
    ll read()
    {
        ll x = 0; int zf = 1; char ch;
        while (ch != '-' && (ch < '0' || ch > '9')) ch = getchar();
        if (ch == '-') zf = -1, ch = getchar();
        while (ch >= '0' && ch <= '9') x = x * 10 + ch - '0', ch = getchar();
        return x * zf;
    }
    int x[100005];
    
    int main()
    {
        int n = read();
        x[1] = read();
        int ansx = 1, ansy = 1;
        for (int i = 2; i <= n; i++)
        {
            x[i] = read();
            if (x[i] == x[i - 1]) continue;
            if (x[i] > x[i - 1]) ansx = max(ansx, ansy + 1);
            else ansy = max(ansy, ansx + 1);
        }
        printf("%d
    ", max(ansx, ansy));
    }
    
  • 相关阅读:
    用导数解决逗逼初三数学二次函数图像题
    NOIP 2014 pj & tg
    BZOJ 1004
    双参数Bellman-ford带队列优化类似于背包问题的递推
    emu1
    無題
    15 day 1代碼
    javascript quine
    线段树的总结
    Watering the Fields(irrigation)
  • 原文地址:https://www.cnblogs.com/WizardCowboy/p/7785002.html
Copyright © 2020-2023  润新知