题解 P5613 【[MtOI2019]黑蚊子多】
williamllk · · 题解
本蒟蒻一打开题解,看到了一些类似桶排序的高级做法,作为一道签到题,本蒟蒻随便写了一个模拟就AC了。
首先是一个有意思的东西
接下来该正经讲题了(敲黑板):
① 输入
for(int i=1;i<=k;i++)
cin>>a[i];
② 判断:其中ans是走的次数,s是已经走过的台阶(s的初始值应设为0,我第一次设为1后样例没通过)
while(s<n){
for(int i=1;i<=k;i++){
if(a[i]==s)
m++;
}
s+=m;
ans++;
}
③ 输出
cout<<ans;
最后献上AC代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,m,k,a[1001],ans=0,s=0;
cin>>n>>m>>k;
for(int i=1;i<=k;i++)
cin>>a[i];
while(s<n){
for(int i=1;i<=k;i++){
if(a[i]==s)
m++;
}
s+=m;
ans++;
}
cout<<ans;
return 0;
}
看到这里点个赞,评个论在走吧!