Blask
好东西快到老王碗里来
lw

IT节程序设计竞赛网络赛(一)

IT节程序设计竞赛网络赛(一)

2月中旬举办了场代码比赛,拉几道我会写的题目来放放(出题人老二次元了)

题目E 因为感觉打不过就全点速度与攻击了

题目详情:

因为最近看到东方大佬在玩新游戏《OldWorld offline》,所以小陈同学作为他的好朋友也决定来尝试一下这款游戏。因为小陈怕打不过小怪(然而他是个高手),所以他决定走速攻流。

所谓速攻流就是只点速度与攻击,这款游戏的速度的优势主要体现在攻击次数上,速度越快,单次内的攻击次数就越高,视情况还可以直接秒杀对方(策划出来背锅)。

并且由于小陈是个脆皮,被攻击命中就会领便当,所以他装载在身上的技能有四个:「无敌金身」「超加速」「光速神言」「虚影」

「无敌金身」:主动技能,通过斩断身旁的空间,切断他人攻击与自身的关系,无视伤害10秒,在1v1中,对每个敌人只能用一次

「超加速」:瞬间提升你的速度,不需要时间,+20%面板速度,直到对战结束

「光速神言」:将咏唱的时间强行压缩在5秒内,创造出不可能的速度提升,+50%面板速度,直到对战结束

「虚影」:被动技能,当你的速度超过100点,将会产生一个自身的虚影,攻击x2

注意:不同的技能可以同时使用,但是相同技能不能同时使用,并且使用技能的时候不能攻击

(比如说「超加速」与「光速神言」能同时使用,正在进行「光速神言」的5秒内,不能进行攻击)

小陈的基本面板是这样的:「攻击100,速度70,血条1」。

由于小陈血量太少了,所以只能靠「无敌金身」的时间击败敌人,「无敌金身」时间一过,小陈立刻就会被击败。

速度=面板速度+附加速度,敌人一秒内的扣血=一秒内的攻击=攻击x攻击次数(速度)

现在给你一组敌人的血条,问小陈能否打败这些敌人,能的话就是输出Yes,不能则输出No。

  • 输入要求
  • 先输入一个T,表示T组数据。(1<=T<=50)
  • 每组数据第一行有一个n,表示n个敌人。(大于等于1小于等于2^15)
  • 每组数据第二行表示n个敌人的血条。(大于等于1小于等于2^30)输出要求
  • 每一组数据第一行输出 Case #i: 表示当前是第i组数据。
  • 后面加n行输出答案。

题目分析:

刚开始看到这道题有点被吓到,题目的文字数据量挺多,但实际上只要计算最终的攻击数据进行判断就完事了。经过所给数据我的判断是超过119000时这孩子可能就没了0.0

题目代码:

C编写

#include <stdio.h>
int main() {
    int number,bad;
    scanf("%d",&number);
    int count= 1;
    while(number!=0) {
        scanf("%d", &bad);
        long long int hp[bad];
        int a=0;
        while (bad!= 0) {
            bad--;
            scanf("%ld",&hp[a]);
            a++;
        }
        printf("Case #%d:\n",count++);
        for (int i = 0; i < a; ++i){
            if(hp[i]>119000){
                printf("No\n");
            } else{
                printf("Yes\n");
            }
        }
        number--;
    }
}

没有标签
首页      开发      IT节程序设计竞赛网络赛(一)

发表回复

textsms
account_circle
email

lw

IT节程序设计竞赛网络赛(一)
2月中旬举办了场代码比赛,拉几道我会写的题目来放放(出题人老二次元了) 题目E 因为感觉打不过就全点速度与攻击了 题目详情: 因为最近看到东方大佬在玩新游戏《OldWorld …
扫描二维码继续阅读
2020-05-12