-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathJump_game.rs
More file actions
29 lines (24 loc) · 715 Bytes
/
Jump_game.rs
File metadata and controls
29 lines (24 loc) · 715 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
struct Solution;
impl Solution {
pub fn can_jump(nums: Vec<i32>) -> bool {
let mut max_reach = 0;
for (i, &jump) in nums.iter().enumerate() {
if i > max_reach {
// println!("{},{}",i,&jump);
return false;
}
max_reach = max_reach.max(i + jump as usize);
// println!("{}",max_reach);
if max_reach >= nums.len() - 1 {
return true;
}
}
false
}
}
fn main() {
let nums = vec![2, 3, 1, 1, 4];
println!("Can jump: {}", Solution::can_jump(nums));
// let nums2 = vec![3, 2, 1, 0, 4];
// println!("Can jump: {}", Solution::can_jump(nums2));
}