当前位置:网站首页>495. Timo attack
495. Timo attack
2022-07-02 06:00:00 【occasionally.】
1. Title Description
stay 《 Hero alliance 》 In the world of , One called “ Timo ” The hero of . His attack can make enemy hero ash ( Editor's note : Cold shooter ) Into a toxic state .
When Timo attacked ash , Ash's poisoning just continued duration second .
Formally speaking , Timo is here t Launching an attack means that ash is in a time interval [t, t + duration - 1]( contain t and t + duration - 1) In a state of poisoning . If Timo is at the end of the poisoning effect front Attack again , The poisoning status timer will Reset , After a new attack , The toxic effect will be in duration Seconds later .
To give you one The decreasing Array of integers for timeSeries , among timeSeries[i] It means Timo is timeSeries[i] Attack ash in seconds , And an integer representing the duration of poisoning duration .
Returns the total number of seconds that ash is poisoned .
Input :timeSeries = [1,4], duration = 2
Output :4
explain : The impact of Timo's attack on ash is as follows :
- The first 1 second , Timo attacked ash and poisoned him immediately . The toxic state will be maintained 2 second , That is to say 1 Second and the 2 second .
- The first 4 second , Timo attacked ash again , Aishi's poisoning continued 2 second , That is to say 4 Second and the 5 second .
Ash's on the third floor 1、2、4、5 Seconds is poisoned , So the total poisoning seconds are 4
2. Their thinking
① The total poisoning seconds are at least duration second , because timeSeries At the last moment, ash can always be poisoned duration second
② Traverse timeSeries, Judge timeSeries Whether the interval between adjacent times in is greater than duration, If greater than or equal to , Poisoning seconds increase duration, If less than , Increase the interval .
- python3
class Solution:
def findPoisonedDuration(self, timeSeries: List[int], duration: int) -> int:
res = duration
if duration == 0:
return 0
for i in range(1,len(timeSeries)):
if timeSeries[i] - timeSeries[i-1] >= duration:
res += duration
else:
res += timeSeries[i] - timeSeries[i-1]
return res
- c++
class Solution {
public:
int findPoisonedDuration(vector<int>& timeSeries, int duration) {
int res = duration;
if (duration == 0)
return 0;
for (int i=1; i < timeSeries.size(); i++){
if (timeSeries[i]-timeSeries[i-1] >= duration)
res += duration;
else
res += timeSeries[i] - timeSeries[i-1];
}
return res;
}
};
边栏推荐
- 测试 - 用例篇
- 3D printer G code command: complete list and tutorial
- Practice C language advanced address book design
- cookie插件和localForage离线储存插件
- Spark概述
- External interrupts cannot be accessed. Just delete the code and restore it Record this unexpected bug
- Regular expression summary
- Eco express micro engine system has supported one click deployment to cloud hosting
- STC8H8K系列汇编和C51实战——按键允许按键计数(利用下降沿中断控制)
- 数理统计与机器学习
猜你喜欢

mysql事务和隔离级别

PHP development and testing WebService (soap) -win

Memcached installation

Lantern Festival gift - plant vs zombie game (realized by Matlab)

uni-app开发中遇到的问题(持续更新)

Shenji Bailian 3.53-kruskal

Summary of MySQL constraints

File contains vulnerability (I)

Unity Shader 学习笔记(3)URP渲染管线带阴影PBR-Shader模板(ASE优化版本)

Comment utiliser mitmproxy
随机推荐
PHP development and testing WebService (soap) -win
Grbl software: basic knowledge of simple explanation
uni-app开发中遇到的问题(持续更新)
492.构造矩形
DRM display framework as I understand it
mysql的约束总结
Error creating bean with name 'instanceoperatorclientimpl' defined in URL when Nacos starts
Common websites for Postgraduates in data mining
Happy Lantern Festival | Qiming cloud invites you to guess lantern riddles
格式校验js
keepalived安装使用与快速入门
mock-用mockjs模拟后台返回数据
1035 Password
运动健身的一些心得经验
51单片机——ADC讲解(A/D转换、D/A转换)
Shenji Bailian 3.52-prim
数据库学习总结5
经典文献阅读之--Deformable DETR
Brain and cognitive neuroscience matlab psychoolbox cognitive science experimental design - experimental design 4
CNN可视化技术 -- CAM & Grad-CAM详解及pytorch简洁实现