zoukankan      html  css  js  c++  java
  • 模板

    #include <bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    
    inline int read() {
        char c = getchar();
        int x = 0, f = 1;
        while(c < '0' || c > '9') {
            if(c == '-')
                f = -1;
            c = getchar();
        }
        while(c >= '0' && c <= '9') {
            x = x * 10 + c - '0';
            c = getchar();
        }
        return x * f;
    }
    
    static const int MAXLOGN = 17;
    static const int MAXN = 100000;
    int logn[MAXN + 5];
    int f[MAXN + 5][MAXLOGN + 1];
    
    inline void init1() {
        logn[1] = 0;
        for(int i = 2; i <= MAXN; i++)
            logn[i] = logn[i / 2] + 1;
    }
    
    inline void init2(int n) {
        for(int i = 1; i <= n; i++)
            f[i][0] = read();
        for(int j = 1; j <= MAXLOGN; j++)
            for(int i = 1; i + (1 << j) - 1 <= n; i++)
                f[i][j] = max(f[i][j - 1], f[i + (1 << (j - 1))][j - 1]);
    }
    
    inline int range_max(int l, int r) {
        int s = logn[r - l + 1];
        return max(f[l][s], f[r - (1 << s) + 1][s]);
    }
    
    int main() {
        int n = read(), m = read();
        st.init1();
        st.init2(n);
        for(int i = 1; i <= m; i++) {
            int l = read(), r = read();
            printf("%d
    ", st.range_max(l, r));
        }
        return 0;
    }
    
  • 相关阅读:
    内层城循环应用——买衣服
    内外层循环用法
    自定义函数的应用
    少有人走的路 随笔
    拆单发货逻辑
    拆单发货-分布页
    拆单发货-主页
    SP--report存储过程
    关于C#对Xml数据解析
    C#模拟http 发送post或get请求
  • 原文地址:https://www.cnblogs.com/Inko/p/11747776.html
Copyright © 2011-2022 走看看