[蓝桥杯 2024 国 Python A] 限流器 题解

· · 题解

(づ。◕‿‿◕。)づ[蓝桥杯 2024 国 Python A] 限流器 题解

题目传送门

博客查看更佳

每次读入时间并计算每次的时间区间(应向上取整,所以计算时应加 n-1),判断时间区间次数,若没有超过 m 次则给答案加 1 即可。

k1 是为了方便取模,使区间变为 [k⋅N+1,(k+1)⋅N+1) 来避免区间开头为 0 的情况。

代码:

#include<bits/stdc++.h>
using namespace std;
int n,m,l,a[1001],ans;

int main(){
    ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);
    cin>>n>>m>>l;

    for(int i=1;i<=l;i++){
        int k;cin>>k;
        k++;a[(k+n-1)/n]++;
        if(a[(k+n-1)/n]<=m)ans++;
    }

    cout<<ans;
    return 0;
}   //Code by wangzhechun

然后我们就可以完美的 AC 这道题啦~(≧▽≦)/~。