这个队列模拟这的是要气死人,我还以为有多高深,结果尼玛是模拟。。。。。。。害我WA一次。。。。。、
其实此题可以通过数计算个数整出来的。。。。
模拟不说了。。。。
<span style="font-size:18px;color:#339999;">#include<cstdio>
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<queue>
using namespace std;
int t,n,m;
struct node
{
int x;
bool y;
};
queue <node> q;
int num[12];
int ans=0;
int bef=0,tem;
int main()
{
scanf("%d",&t);
node f;
while(t--)
{
memset(num,0,sizeof(num));
ans=bef=0;
while(!q.empty()) q.pop();
scanf("%d%d",&n,&m);
for(int i=0;i<n;i++)
{
scanf("%d",&f.x);
num[f.x]++;
bef=max(bef,f.x);
f.y=false;
if(i==m)
{
f.y=true;
tem=f.x;
}
q.push(f);
}
node u;
while(1)
{
u=q.front();
q.pop();
if(u.x!=bef)
{
q.push(u);
continue;
}
num[bef]--;
ans++;
while(num[bef]==0) bef--;
if(u.y==true)
{
printf("%d\n",ans);
break;
}
}
}
return 0;
}</span>
<span style="font-size:18px;">华阳左思娜迦枪,面中心敖招致翔。</span>