From b5e40df31c953c3c811d5ba462ff9b8bdf93be93 Mon Sep 17 00:00:00 2001 From: Mohammad S Anwar Date: Wed, 16 Nov 2022 21:22:26 +0000 Subject: - Added solutions to the task "Twice Largest" of week 191. --- .../java/theweeklychallenge/TwiceLargest.java | 52 ++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 challenge-191/mohammad-anwar/java/theweeklychallenge/TwiceLargest.java (limited to 'challenge-191/mohammad-anwar/java/theweeklychallenge/TwiceLargest.java') diff --git a/challenge-191/mohammad-anwar/java/theweeklychallenge/TwiceLargest.java b/challenge-191/mohammad-anwar/java/theweeklychallenge/TwiceLargest.java new file mode 100644 index 0000000000..5ee4cdde29 --- /dev/null +++ b/challenge-191/mohammad-anwar/java/theweeklychallenge/TwiceLargest.java @@ -0,0 +1,52 @@ +package theweeklychallenge; + +/* + +Week 191: + + https://theweeklychallenge.org/blog/perl-weekly-challenge-191 + +Task #1: Twice Largest + + You are given list of integers, @list. + + Write a script to find out whether the largest item in the list + is at least twice as large as each of the other items. + +Compile and Run: + + mohammad-anwar/java$ javac theweeklychallenge/TwiceLargest.java + mohammad-anwar/java$ java theweeklychallenge.TwiceLargest + +*/ + +import java.util.Arrays; +import junit.framework.TestCase; +import static junit.framework.Assert.*; + +public class TwiceLargest extends TestCase { + + public static void main(String[] args) { + junit.textui.TestRunner.run( + theweeklychallenge.TwiceLargest.class + ); + } + + public void testTwiceLargest() { + assertEquals(twiceLargest(new int[]{1, 2, 3, 4}), -1); + assertEquals(twiceLargest(new int[]{1, 2, 0, 5}), 1); + assertEquals(twiceLargest(new int[]{2, 6, 3, 1}), 1); + assertEquals(twiceLargest(new int[]{4, 5, 2, 3}), -1); + } + + public static int twiceLargest(int[] array) { + Arrays.sort(array); + int max = array[array.length-1]; + for(int i : array) { + if (i == max) { continue; } + if (i * 2 > max) { return -1; }; + } + + return 1; + } +} -- cgit