NC220349. E捡贝壳
描述
输入描述
第一行给出两个整数n和q,含义如上所示。
第二行给出n个整数表示
接下来q行,每行3个整数l,r,x,含义如上所示
输出描述
对于每次询问输出该次询问中能捡到的贝壳数
示例1
输入:
5 3 1 2 3 4 5 1 3 2 1 5 3 2 5 4
输出:
1 1 1
说明:
示例2
输入:
10 3 5532 24380 19363 11022 23965 22383 27049 22357 30453 7451 1 6 2 3 10 10 1 10 9
输出:
3 0 1
说明:
C++ 解法, 执行用时: 162ms, 内存消耗: 4924K, 提交时间: 2021-09-11 21:31:09
#include<bits/stdc++.h> using namespace std; vector<int>v[100006]; int n,r,l,a,q,i; int main() { cin>>n>>q; for(i=1;i<=n;i++) { cin>>a; v[a].push_back(i); } int d; while(q--) { int ans=0; cin>>l>>r>>d; for(i=d;i<=1e5;i+=d) { for(auto j : v[i] ) ans+=j>=l&&j<=r; } cout<<ans<<endl; } }