当前位置:网站首页>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;
}
};
边栏推荐
- Several keywords in C language
- JWT工具类
- [C language] simple implementation of mine sweeping game
- PHP gets CPU usage, hard disk usage, and memory usage
- JWT tool class
- Fundamentals of software testing
- php读文件(读取json文件,转换为数组)
- MySQL transaction and isolation level
- 【論文翻譯】GCNet: Non-local Networks Meet Squeeze-Excitation Networks and Beyond
- Stc8h8k series assembly and C51 actual combat - digital display ADC, key serial port reply key number and ADC value
猜你喜欢

Shenji Bailian 3.53-kruskal

Introduce uview into uni app

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

Detailed notes of ES6

ROS2----LifecycleNode生命周期节点总结

Grbl software: basic knowledge of simple explanation

Shenji Bailian 3.54-dichotomy of dyeing judgment

Eco express micro engine system has supported one click deployment to cloud hosting

vite如何兼容低版本浏览器

Lantern Festival gift - plant vs zombie game (realized by Matlab)
随机推荐
Go learning notes integration
Web page user step-by-step operation guide plug-in driver js
uni-app开发中遇到的问题(持续更新)
如何使用MITMPROXy
STC8H8K系列汇编和C51实战——数码管显示ADC、按键串口回复按键号与ADC数值
Memcached installation
数据回放伴侣Rviz+plotjuggler
【LeetCode】Day92-盛最多水的容器
VSCode paste image插件保存图片路径设置
Software testing - concept
测试 - 用例篇
Fundamentals of software testing
正则表达式总结
Comment utiliser mitmproxy
Go language web development is very simple: use templates to separate views from logic
死磕大屏UI,FineReport开发日记
Some descriptions of Mipi protocol of LCD
1036 Boys vs Girls
STC8H8K系列匯編和C51實戰——數碼管顯示ADC、按鍵串口回複按鍵號與ADC數值
CNN可视化技术 -- CAM & Grad-CAM详解及pytorch简洁实现