/*
P2006 题解
循环+模拟
*/
#include <cstdio>//头文件
int main()//主函数
{
int k=0,m=0,n=0;//定义变量k、n和m,表示他一共有k点法力值,一共有m个技能,而boss的体力值为n
bool flag=false;//开一个布尔变量,如果模拟完了flag的值还是false的话就表明当前没有任何的一个技能能够打败boss,那么就输出-1,否则,如果flag的值为true的话就表明当前至少有一个招数可以打败boss
scanf("%d %d %d",&k,&m,&n);//读入k、m和n,表示他一共有k点法力值,一共有m个技能,而boss的体力值为n
for(int i=1;i<=m;i++)//读入每个技能耗费的法力值和可以造成的对boss的伤害值
{
int x=0,y=0;//x表示第i个技能耗费的法力值,y表示第i个技能可以造成的对boss的伤害值
scanf("%d %d",&x,&y);//读入第i个技能耗费的法力值和可以造成的对boss的伤害值
if(x!=0)//这是为了预防除数为0的判断
{
int ans=(k/x)*y;//ans表示只用这个技能最多能够对这个boss产生多少的伤害值
if(ans>=n)//如果能够杀死这个boss
{
printf("%d ",i);//那么就去输出这个技能的编号
flag=true;//标记一下
}
}
else if(x==0 && y!=0)//否则如果除数为0(即第i个技能可以放无限次,“第i个技能”也可以称作“编号为i的这个技能”)
{
printf("%d ",i);//输出它的编号
flag=true;//标记一下
}
}
if(flag==false)//如果模拟完了flag的值还是false的话就表明当前没有任何的一个技能能够打败boss
{
printf("-1");//那么就输出-1
}
return 0;//结束程序
}