zoukankan      html  css  js  c++  java
  • P2006 赵神牛的游戏

    题目描述

    在 DNF 中,赵神牛有一个缔造者,他一共有 kk 点法力值,一共有 mm 个技能,每个技能耗费的法力值为 a_ia**i,可以造成的伤害为 b_ib**i,而 boss 的体力值为 nn,请你求出它放哪个技能,才可以打死 boss。

    当然,赵神牛技术很菜,他一局只放一个技能,不过每个技能都可以放无数次。

    输入格式

    第一行有三个整数,分别表示 k,m,nk,m,n

    后面 mm 行,每行两个整数,第 (i + 1)(i+1) 行的整数表示耗费的法力值 a_ia**i 和造成的伤害 b_ib**i

    输出格式

    输出仅一行,既可以杀死 boss 的技能序号,如果有多个,按从小到大的顺序输出,中间用一个空格隔开;如果没有技能能杀死 boss,输出 -1

    输入输出样例

    输入 #1复制
    100 3 5000
    20 1000
    90 1
    110 10000
    
    输出 #1复制
    1
    
    输入 #2复制
    50 4 10
    60 100
    70 1000
    80 1000
    90 0
    
    输出 #2复制
    -1
    

    说明/提示

    数据规模与约定

    对于全部的测试点,满足:

    • 0le n,m,kle 3 imes 10^40≤n,m,k≤3×104,
    • 1 leq a_i,b_ile 21474836471≤a**i,b**i≤2147483647。

    代碼

    #include<stdio.h>
    int main(){
    	int k,m,n;//k點法力值,m個技能,n點血量 
    	scanf("%d%d%d",&k,&m,&n);
    	int factor[m][2];//0法力消耗 1造成傷害 
    	for(int i=0;i<m;i++){
    		for(int j=0;j<2;j++){
    			scanf("%d",&factor[i][j]);
    		}
    	}
    	int check=0;
    	int temp=0;
    	for(int i=0;i<m;i++){
    	    if(factor[i][0]!=0){
    	        temp=(k/factor[i][0])*factor[i][1];
    	    }else{
    	        temp=n;
    	    }
    		if(temp>=n){
    			printf("%d ",i+1);
    			check=1;
    		}
    		temp=0;
    	}
    	if(check==0){
    		printf("-1");
    	}
    	return 0;
    } 
    

    注意技能花費存在0的情況,而花費爲零即一定能戰勝惡魔,因此直接賦值為怪物血量即可通過。

    编程语言C++

    代码长度502B

    用时41ms

    内存764.00KB

  • 相关阅读:
    springboot自动装配原理
    @Inherited 注解的作用
    基础知识点:链表反转
    基础知识点:二叉树的层次遍历
    算法题:8、二进制中1的个数
    微服务_GPRC
    扎实基础_数据结构
    .net core3.0程序发布到linux+docker
    c#_安全漏洞总结
    IIS Express(电脑无管理员权限如何启用VS调试)
  • 原文地址:https://www.cnblogs.com/rrrrraulista/p/14221489.html
Copyright © 2011-2022 走看看