比赛 |
20131130 |
评测结果 |
AAAAAAAAAA |
题目名称 |
提高速度 |
最终得分 |
100 |
用户昵称 |
NVIDIA |
运行时间 |
0.390 s |
代码语言 |
C++ |
内存使用 |
228.97 MiB |
提交时间 |
2015-09-19 21:10:11 |
显示代码纯文本
#include <cstdio>
#include <cstring>
#include <cmath>
#include<cstdio>
#include<algorithm>
#include<iostream>
#include<set>
#include<vector>
#include<stack>
#include<queue>
#include<string>
const int N=9989989;
int ans=0,n,k;
int flag[N];
double F,M;
using namespace std;
struct T
{
double f,m;
int num;
bool operator <(const T&b)const
{
return f/m>b.f/b.m;
}
}
T[N];
void paixu()
{
memset(flag,0,sizeof(flag));
cin>>F>>M>>n;
for (int i=1;i<=n;i++)
{
scanf("%lf%lf",&T[i].f,&T[i].m);
T[i].num=i;
}
sort(T+1,T+1+n);
}
void zhuchengxu()
{
int cnt=0;
for (int i=1;i<=n;i++)
{
if ((F+T[i].f)/(M+T[i].m)>(F/M))
{
flag[T[i].num]=1;
F=F+T[i].f;
M=M+T[i].m;
cnt++;
}
}
for (int i=1;i<=n;i++)
{
if (flag[i])
cout<<i;
}
if (cnt==0)
cout<<"NONE";
}
int main()
{
freopen("sboost.in","r",stdin);
freopen("sboost.out","w",stdout);
paixu();
zhuchengxu();
return 0;
}