A 经此一役小红所向无敌(水题)

 2023-09-05 阅读 108 评论 0

摘要:LINK 题目描述 经过重重困难,对立和光终于来到魔王城,和最终的大魔王——小红进行决战。 已知小红的血量是 10^{999999999}。 对立的攻击力是 aa ,血量是 hh 。 光的攻击力是 bb ,血量是 kk 。 每回合光先对小红发起攻击,然后对立对小红发

LINK
题目描述
经过重重困难,对立和光终于来到魔王城,和最终的大魔王——小红进行决战。

已知小红的血量是 10^{999999999}。
对立的攻击力是 aa ,血量是 hh 。
光的攻击力是 bb ,血量是 kk 。

每回合光先对小红发起攻击,然后对立对小红发起攻击,然后小红展开幻术,令光和对立同时互相攻击。
每次攻击后,受击者的血量会减掉攻击者的攻击力。
当光和对立其中一人死亡后,另一人会悲痛欲绝,对小红发出自己攻击力*10的伤害的大招,然后自杀。(若两人同时死亡,则两人都无法发出大招)

小红想知道,弱小的光和对立,她们能对自己造成多少点伤害?

输入描述:
一行 44 个正整数 aa , hh , bb , kk ,用空格隔开。
输出描述:
一个正整数,代表小红受到的伤害。
1≤a,b,h,k≤10 ^9

示例1
输入
复制
2 3 1 3
输出
复制
26
说明
第一回合,小红受到了对立和光的攻击,并让她们互相攻击。第一回合结束时,小红共受到 3 点伤害。这时对立血量为 2 ,光的血量为 1 。
第二回合,小红受到了对立和光的攻击,并让她们互相攻击。这时对立血量为 1 ,光的血量为 0 死亡。对立放出大招后自杀。本回合小红共受到 23 点伤害。
小红受到的总伤害为 3+23=263+23=26 。


分析:当时慌得一匹没有做出来,降低时间复杂度所以直接除和取余,不要用while循环,稍微注意一下1≤a,b,h,k≤10^9应该开long long

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
typedef long long ll;
int main()
{ll a1,a2,b1,b2,t1,t2,sum;scanf("%lld%lld%lld%lld",&a1,&b1,&a2,&b2);t1=t2=0;t1=b1/a2;t2=b2/a1;if(b1%a2)t1++;if(b2%a1)t2++;sum=min(t1,t2)*(a1+a2);if(t1<t2)sum+=a2*10;if(t2<t1)sum+=a1*10;printf("%lld\n",sum);
}

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://808629.com/685.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 86后生记录生活 Inc. 保留所有权利。

底部版权信息