ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

模拟DNF放技能的蓝耗问题(P2006题题解,Java语言描述)

2020-01-29 15:04:01  阅读:316  来源: 互联网

标签:蓝耗 DNF consume scanner 题解 builder System nextInt Scanner


题目要求

P2006题目链接
在这里插入图片描述
在这里插入图片描述

分析

看来出题人喜欢DNF啊,还对蓝充足颇为渴求 (废话,没蓝干甚) ……

这题貌似水题,但AC率不高,因为有坑诶……

首先是耗蓝为0的时候,伤害还是打的出来的(参考平A)……这将导致RE(除零)或者WA……

还有就是这个迷幻的题意表述啊,真的是……其实它的意思是:我们可以随便选一种技能,随便放,直到蓝不够用,对方假设不伤害我们。每次模拟一种技能,看看有几种技能能符合使用要求。

就是这个意思,其实分析到这里就回归水题本质了,但问题是这破题……ε=(´ο`*)))唉……没啥……看代码就行了~~

StringBuilder,看看,好使吧……多用这个才是正道……

AC代码(Java语言描述)

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int max = scanner.nextInt(), num = scanner.nextInt(), min = scanner.nextInt();
        long consume, damage;
        StringBuilder builder = new StringBuilder();
        for (int i = 1; i <= num; i++) {
            consume = scanner.nextLong();
            damage = scanner.nextLong();
            if ((consume == 0 && damage > 0) || (consume > 0 && consume <= max && damage*(max/consume) >= min)) {
                builder.append(i).append(" ");
            }
        }
        scanner.close();
        if (builder.length() == 0) {
            System.out.println(-1);
        } else {
            System.out.println(builder.toString().trim());
        }
    }
}
进阶的JFarmer 发布了407 篇原创文章 · 获赞 666 · 访问量 6万+ 私信 关注

标签:蓝耗,DNF,consume,scanner,题解,builder,System,nextInt,Scanner
来源: https://blog.csdn.net/weixin_43896318/article/details/104106797

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有