- 瑞士轮
- 2018-09-16 01:27:49 @
用正常的cin超时,ios :: sync_with_stdio(false)超时不变;为什么,方法不对吗,求教。
贴代码:
#include<bits/stdc++.h>
using namespace std;
const int MAXN = 1e6+10;
struct node{
int id,wt,sc;
node(int _id,int _wt,int _sc){
id=_id;
wt=_wt;
sc=_sc;
}
};
bool cmp(node a,node b)
{
if(a.sc == b.sc) return a.id<b.id;
return a.sc>b.sc;
}
int main()
{
ios :: sync_with_stdio(false);
int n,r,q,t;
vector<node> a;
vector<int> b,c;
while(cin>>n>>r>>q)
{
a.clear();b.clear();c.clear();
for(int i=0; i<2*n; i++)
{
cin>>t;
b.push_back(t);
}
for(int i=0;i<2*n;i++)
{
cin>>t;
c.push_back(t);
}
for(int i=0;i<2*n;i++)
{
a.push_back(node(i+1,c[i],b[i]));
}
sort(a.begin(),a.end(),cmp);
while(r--)
{
for(int i=0;i<a.size();i+=2)
{
if(a[i].wt>a[i+1].wt) a[i].sc++;
else a[i+1].sc++;
}
sort(a.begin(),a.end(),cmp);
/*cout<<r<<"_______"<<endl;
for(int i=0;i<a.size();i++)
{
cout<<a[i].id<<"\t"<<a[i].sc<<"\t"<<a[i].wt<<endl;
}*/
}
cout<<a[q-1].id<<endl;
}
return 0;
}
1 条评论
-
fwkthhm LV 8 @ 2018-10-04 17:13:54
下面加上cin.tie(0)
- 1