From e3eba65516c158f90c3a1a77e50daa2e569ed615 Mon Sep 17 00:00:00 2001 From: Abigail Date: Wed, 9 Feb 2022 17:53:36 +0100 Subject: Week 151: Java solution for part 2 --- challenge-151/abigail/README.md | 1 + challenge-151/abigail/java/ch-2.java | 30 ++++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+) create mode 100644 challenge-151/abigail/java/ch-2.java diff --git a/challenge-151/abigail/README.md b/challenge-151/abigail/README.md index 870c6804c1..96d5223161 100644 --- a/challenge-151/abigail/README.md +++ b/challenge-151/abigail/README.md @@ -18,6 +18,7 @@ * [Bash](bash/ch-2.sh) * [C](c/ch-2.c) * [Go](go/ch-2.go) +* [Java](java/ch-2.java) * [Lua](lua/ch-2.lua) * [Node.js](node/ch-2.js) * [Pascal](pascal/ch-2.p) diff --git a/challenge-151/abigail/java/ch-2.java b/challenge-151/abigail/java/ch-2.java new file mode 100644 index 0000000000..98c27217d7 --- /dev/null +++ b/challenge-151/abigail/java/ch-2.java @@ -0,0 +1,30 @@ +// +// See https://theweeklychallenge.org/blog/perl-weekly-challenge-151 +// + +// +// Run as: ln ch-2.java ch2.java; javac ch2.java; java ch2 < input-file +// + +import java.util.*; + +public class ch2 { + public static void main (String [] args) { + Scanner scanner = new Scanner (System . in); + while (scanner . hasNextLine ()) { + String line = scanner . nextLine (); + Scanner inner_scanner = new Scanner (line); + ArrayList h = new ArrayList (); + while (inner_scanner . hasNextInt ()) { + h . add (inner_scanner . nextInt ()); + } + h . add (0); + h . add (0); + for (int i = h . size () - 3; i >= 2; i --) { + h . set (i, Math . max (h . get (i) + h . get (i + 2), + h . get (i + 1))); + } + System . out . printf ("%d\n", h . get (0) + h . get (2)); + } + } +} -- cgit