1. 程式人生 > >P2006 趙神牛的遊戲

P2006 趙神牛的遊戲

def i++ 輸入輸出 %d mes 兩個 如果 gin 空格

題目描述

在DNF 中,趙神牛有一個締造者,他一共有k點法力值,一共有m個技能,每個技能耗費的法力值為a[i],可以造成的傷害為b[i],而boss 的體力值為n,請你求出它放哪個技能,才可以打死boss。

當然,趙神牛技術很菜,他一局只放一個技能(這技術……),不過每個技能都可以放無數次。

輸入輸出格式

輸入格式:

輸入文件為dnf.in。

第一行,三個數k,m,n;

後面m行,每行兩個數,表示耗費的法力值和造成的傷害。

輸出格式:

輸出文件為dnf.out。

輸出僅一行,既可以殺死boss 的技能序號,如果有多個,按從小到大的順序輸出,中間用一個空格隔開;如果沒有技能能殺死boss,輸出-1。

輸入輸出樣例

輸入樣例#1:
【輸入樣例1】
100 3 5000
20 1000
90 1
110 10000
【輸入樣例2】
50 4 10
60 100
70 1000
80 1000
90 0
輸出樣例#1:
【輸出樣例1】
1
【輸出樣例1】
-1

說明

【數據規模】

對於100%的數據,0<=n,m,k<=30000,

a[i],b[i]<=maxlongint,

對每個技能模擬就行,但要註意除數為0,要的輸處理。

#include<iostream>
#include<cstdio>
#include<string.h>
#include<algorithm>
#include
<math.h> #include<cmath> using namespace std; #define LL long long LL k,n,m,tot; LL a[30019],b[30019],t; int main() { scanf("%lld%lld%lld",&k,&m,&n); for(int i=1;i<=m;i++) scanf("%lld%lld",&a[i],&b[i]); for(int i=1;i<=m;i++) { if
(a[i]==0) { printf("%d ",i);tot++; continue; } t=(LL)(k/a[i])*b[i]; if(t>=n) printf("%d ",i),tot++; } if(!tot) cout<<-1; return 0; }

P2006 趙神牛的遊戲