Skip to content

Commit 1c52780

Browse files
committed
Create 1701-average-waiting-time.rs
1 parent 6f238c9 commit 1c52780

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

1701-average-waiting-time.rs

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
pub fn average_waiting_time(customers: Vec<Vec<i32>>) -> f64 {
2+
let mut time = 0f64;
3+
let mut sum = 0f64;
4+
for customer in &customers {
5+
if customer[0] as f64 >= time {
6+
sum += customer[1] as f64;
7+
time = (customer[0] + customer[1]) as f64;
8+
} else {
9+
sum += time + (customer[1] - customer[0]) as f64;
10+
time += customer[1] as f64;
11+
}
12+
}
13+
sum as f64 / customers.len() as f64
14+
}
15+
16+
fn main() {
17+
println!("{:?}", average_waiting_time(vec![vec![1,2], vec![2,5], vec![4,3]]));
18+
println!("{:?}", average_waiting_time(vec![vec![5,2], vec![5,4], vec![10,3], vec![20,1]]));
19+
}

0 commit comments

Comments
 (0)