UVALive - 3638 Printer Queue
https://vjudge.net/problem/UVALive-3638
#include<iostream>
#include<algorithm>
#include<cstring>
#include<cstdio>
#include<vector>
using namespace std;
#define PII pair<int,int>
int T;
int main()
{
cin>>T;
while(T--)
{
int n,pos,t;
vector<pair<int,int>> q;
cin>>n>>pos;
for(int i=0;i<n;i++)
{
cin>>t;
q.push_back({t,i});
}
int ans=0;
while(q.size())
{
int u=0;
for(int i=1;i<q.size();i++)
if(q[i].first>q[u].first)
u=i;
for(int i=0;i<u;i++)
{
q.push_back(q[0]);
q.erase(q.begin());
}
// for(int i=0;i<n;i++)
// cout<<q[i].first<<" ";
// cout<<"\n";
ans++;
if(q[0].second==pos)
break;
q.erase(q.begin());
}
cout<<ans<<'\n';
}
return 0;
}
本文来自博客园,作者:斯文~,转载请注明原文链接:https://www.cnblogs.com/zhiweb/p/15483260.html

浙公网安备 33010602011771号