|
4 | 4 | import java.util.LinkedList; |
5 | 5 | import java.util.List; |
6 | 6 |
|
7 | | -/** |
8 | | - * 636. Exclusive Time of Functions |
9 | | - * |
10 | | - * Given the running logs of n functions that are executed in a nonpreemptive single threaded CPU, |
11 | | - * find the exclusive time of these functions. |
12 | | - * Each function has a unique id, start from 0 to n-1. |
13 | | - * A function may be called recursively or by another function. |
14 | | - * A log is a string has this format : function_id:start_or_end:timestamp. |
15 | | - * For example, "0:start:0" means function 0 starts from the very beginning of time 0. |
16 | | - * "0:end:0" means function 0 ends to the very end of time 0. |
17 | | - * Exclusive time of a function is defined as the time spent within this function, |
18 | | - * the time spent by calling other functions should not be considered as this function's exclusive time. |
19 | | - * You should return the exclusive time of each function sorted by their function id. |
20 | | -
|
21 | | - Example 1: |
22 | | - Input: |
23 | | - n = 2 |
24 | | - logs = |
25 | | - ["0:start:0", |
26 | | - "1:start:2", |
27 | | - "1:end:5", |
28 | | - "0:end:6"] |
29 | | - Output:[3, 4] |
30 | | - Explanation: |
31 | | - Function 0 starts at time 0, then it executes 2 units of time and reaches the end of time 1. |
32 | | - Now function 0 calls function 1, function 1 starts at time 2, executes 4 units of time and end at time 5. |
33 | | - Function 0 is running again at time 6, and also end at the time 6, thus executes 1 unit of time. |
34 | | - So function 0 totally execute 2 + 1 = 3 units of time, and function 1 totally execute 4 units of time. |
35 | | -
|
36 | | - Note: |
37 | | - Input logs will be sorted by timestamp, NOT log id. |
38 | | - Your output should be sorted by function id, which means the 0th element of your output corresponds to the exclusive time of function 0. |
39 | | - Two functions won't start or end at the same time. |
40 | | - Functions could be called recursively, and will always end. |
41 | | - 1 <= n <= 100 |
42 | | - */ |
43 | 7 | public class _636 { |
44 | 8 | public static class Solution1 { |
45 | 9 | /** |
|
0 commit comments