【记录】loj2967「COCI 2010.03.06」PROGRAM

作为回归题挺有意思的。

这个求和级数需要了解一下:

so 暴力即可,相同的 可以搞个 cnt 优化一下。

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;

typedef long long LL;
const int N = 1e6 + 10;
int cnt[N];
int n, K;
LL s[N];
vector<int> G;

int main () {
    ios::sync_with_stdio(false);
    cin.tie(0);

    cin >> n >> K;
    memset(cnt, 0, sizeof(cnt));
    for (int i = 1; i <= K; i ++) {
        int x;
        cin >> x;
        if (cnt[x] == 0) {
            G.push_back(x);
        }
        cnt[x] ++;
    }

    sort(G.begin(), G.end());
    memset(s, 0, sizeof(s));
    for (int i : G) {
        for (int j = 0; j <= n; j += i) {
            s[j] += cnt[i];
        }
    }
    for (int i = 1; i <= n; i ++) {
        s[i] += s[i - 1];
    }

    int q;
    cin >> q;
    while (q --) {
        int l, r;
        cin >> l >> r;
        if (l != 0) {
            cout << s[r] - s[l - 1] << "\n";
        }
        else {
            cout << s[r] << "\n";
        }
    }

    return 0;
}
相关推荐
2601_954526754 小时前
【工业传感与算法实战】温漂补偿与零点抗漂破局:基于二阶多项式拟合的 C/C++ 边缘校准算法,深度拆解“压力变送器什么牌子好”的技术硬指标
c语言·c++·算法
code_pgf4 小时前
`unordered_map` 详解
c++
叩码以求索5 小时前
浅谈:算法萌新如何高效刷题应对面试(一)
算法·面试·职场和发展
一拳一个呆瓜6 小时前
【STL】iostream 编程:检测提取操作产生的错误
c++·stl
稚南城才子,乌衣巷风流6 小时前
判断素数与拓展应用
c++
众少成多积小致巨6 小时前
C++ 规范参考(下)
c++
c238566 小时前
把 C++ 内存分配拆透:new 与 malloc 的三层血缘
开发语言·c++·算法
aaaameliaaa7 小时前
指针之总结
c语言·笔记·算法
宵时待雨8 小时前
优选算法专题9:哈希表
数据结构·算法·散列表
txzrxz8 小时前
最短路问题——Dijkstra 算法
数据结构·c++·算法·最短路·优先队列