diff options
| author | Ali <adeadmarshal@gmail.com> | 2025-10-27 13:52:19 +0330 |
|---|---|---|
| committer | Ali <adeadmarshal@gmail.com> | 2025-10-27 13:52:19 +0330 |
| commit | a09ecf8eee4013cad8b8bb1edb43b6db0a87d3e1 (patch) | |
| tree | 0eb6d41743fcf553d707c0ef4f7f9335ca427ca1 /challenge-345/deadmarshal/java/Ch2.java | |
| parent | 9b1eba54d5e59d05df44f336120a6a03be62a645 (diff) | |
| download | perlweeklychallenge-club-a09ecf8eee4013cad8b8bb1edb43b6db0a87d3e1.tar.gz perlweeklychallenge-club-a09ecf8eee4013cad8b8bb1edb43b6db0a87d3e1.tar.bz2 perlweeklychallenge-club-a09ecf8eee4013cad8b8bb1edb43b6db0a87d3e1.zip | |
TWC345
Diffstat (limited to 'challenge-345/deadmarshal/java/Ch2.java')
| -rw-r--r-- | challenge-345/deadmarshal/java/Ch2.java | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/challenge-345/deadmarshal/java/Ch2.java b/challenge-345/deadmarshal/java/Ch2.java new file mode 100644 index 0000000000..25c25ff98a --- /dev/null +++ b/challenge-345/deadmarshal/java/Ch2.java @@ -0,0 +1,28 @@ +import java.util.List; +import java.util.LinkedList; +import java.util.ArrayList; + +public class Ch2 { + public static void main(String[] args) { + System.out.println(last_visitor(new int[]{5,-1,-1})); + System.out.println(last_visitor(new int[]{3,7,-1,-1,-1})); + System.out.println(last_visitor(new int[]{2,-1,4,-1,-1})); + System.out.println(last_visitor(new int[]{10,20,-1,30,-1,-1})); + System.out.println(last_visitor(new int[]{-1,-1,5,-1})); + } + + private static List<Integer> last_visitor(int[] arr) { + List<Integer> res = new LinkedList<Integer>(); + List<Integer> seen = new ArrayList<Integer>(); + int k = 0; + for(int i =0; i < arr.length; ++i) { + if(arr[i] != -1) { + seen.add(arr[i]); + k = seen.size(); + } + else if(k == 0) res.add(-1); + else res.add(seen.get(--k)); + } + return res; + } +} |
