From 083baea624d48051c4cfe301aa855b86e99f817f Mon Sep 17 00:00:00 2001 From: Lukas Kohlmaier Date: Wed, 9 Oct 2019 21:43:10 +0200 Subject: [PATCH 1/2] Java implementation of the LargestProductInGrid problem Java implementation of the LargestProductInGrid problem with Netbeans IDE. --- .../LargestProductInGrid-Java/.classpath | 10 +++ Solutions/LargestProductInGrid-Java/.project | 17 ++++ .../.settings/org.eclipse.jdt.core.prefs | 14 ++++ .../LargestProductInGrid.class | Bin 0 -> 1732 bytes .../LargestProductInGrid.java | 77 ++++++++++++++++++ 5 files changed, 118 insertions(+) create mode 100644 Solutions/LargestProductInGrid-Java/.classpath create mode 100644 Solutions/LargestProductInGrid-Java/.project create mode 100644 Solutions/LargestProductInGrid-Java/.settings/org.eclipse.jdt.core.prefs create mode 100644 Solutions/LargestProductInGrid-Java/bin/com/luko/LargestProductInGrid/LargestProductInGrid.class create mode 100644 Solutions/LargestProductInGrid-Java/src/com/luko/LargestProductInGrid/LargestProductInGrid.java diff --git a/Solutions/LargestProductInGrid-Java/.classpath b/Solutions/LargestProductInGrid-Java/.classpath new file mode 100644 index 0000000..c0f260f --- /dev/null +++ b/Solutions/LargestProductInGrid-Java/.classpath @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/Solutions/LargestProductInGrid-Java/.project b/Solutions/LargestProductInGrid-Java/.project new file mode 100644 index 0000000..ad95641 --- /dev/null +++ b/Solutions/LargestProductInGrid-Java/.project @@ -0,0 +1,17 @@ + + + LargestProductInGrid-Java + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/Solutions/LargestProductInGrid-Java/.settings/org.eclipse.jdt.core.prefs b/Solutions/LargestProductInGrid-Java/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..71f736f --- /dev/null +++ b/Solutions/LargestProductInGrid-Java/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,14 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=12 +org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve +org.eclipse.jdt.core.compiler.compliance=12 +org.eclipse.jdt.core.compiler.debug.lineNumber=generate +org.eclipse.jdt.core.compiler.debug.localVariable=generate +org.eclipse.jdt.core.compiler.debug.sourceFile=generate +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning +org.eclipse.jdt.core.compiler.release=enabled +org.eclipse.jdt.core.compiler.source=12 diff --git a/Solutions/LargestProductInGrid-Java/bin/com/luko/LargestProductInGrid/LargestProductInGrid.class b/Solutions/LargestProductInGrid-Java/bin/com/luko/LargestProductInGrid/LargestProductInGrid.class new file mode 100644 index 0000000000000000000000000000000000000000..5ac41f9a85eef7aee21b373b2b69f6c0d9df4e09 GIT binary patch literal 1732 zcmb7F-%}f96g^+|+bo2wKxi5u&@Q#r1PZBu*fa^%)|N(7=@bhC4Zsm){X@YNP)gB`zt%^+5Sd$aed3F1_FlP zs;eLYZFRLI&{e2}P5IA8%M^vD9Dl)Jn!$A{67-qXL$*>V(*O>#Ywa) zxQ*;>rVm)evFmvQX9be~u6?!TdNrrng>wR#rA^1GI-X~J?FO4xz|*?Bp$27bkcqX^ zs$1@kwOh1e7{gmimbY0geSAY>$e0+%gh15Z-gbP>Y9w9C9C7Y2$ai6qDp`B&>{%6i zQDE}8?EjHtn&lMH%OS^E6YpY<>k%~CQVX0+AEl6waYrv3$O#OD0=+JsiM(pm*j8$K z9HQjkUic+;iSBV1D}i0TbIaZim(4(t48L@J+Y5&s zt2A28s&m6t%QpW5Yxw>p#LycGz7cD5VP%o0i2{`Hxf8Sgsq7o zwyGNTwSrdE=CwKb5Hs4G{t#ypGNJ#1Wa>WpJ7ysviwS-Ht}YV#W0>0X^B-URepiZw z7(CpbT{k97RPKBh*M@eYj?jeX4Q<2}Vv3mcwegCMU6nMv}BBFVM~ z5oi0O7{+;|kml1mK`h66*I}W~fhi&8+ssiwk*5eeB3Ia##1`JC72*9&%6Emey6JV5 zmSp5OuF=x*A)|(%zhXh%z;(eF@DjQhjQl}bG4&(TktxSOwIL6*V(K1pBkXs0IwfmU zYsKMv=nv1b)L}zO{vUM|KJpWp zw&neZLV^uPaDie>@|5N1FX9|#Foju)a*0yqP^Ps^8P|F8DcLua=vxZ(9TxBdZsI;Z q4kfqRDuhxpF&>0c@~?p&H$usks6B|j sumVar) { + sumVar = calculateGridSum(x, y); + xRes = x; + yRes = y; + } + } + } + System.out.println("The cell with the biggest grid sum is x= " + xRes + " y= " + yRes + " sum: " + sumVar); + } + + /** + * + * @param x The x coordinate of the position to calculate the sum for. + * @param y The y coordinate of the position to calculate the sum for. + * @return The sum of the given cell position with their direct neighbours. + */ + private static int calculateGridSum(int x, int y) { + int finalSum = 0; + + if(y > 0) { //Adding the item above + finalSum += numGrid[x][y - 1]; + + if(x > 0) { //Adding the item above left + finalSum += numGrid[x - 1][y - 1]; + } + + if(numGrid.length - x > 1) { //Adding the item above right + finalSum += numGrid[x + 1][y - 1]; + } + } + + if(x > 0) { //Adding the item left + finalSum += numGrid[x - 1][y]; + } + + if(numGrid.length - x > 1) { //Adding the item right + finalSum += numGrid[x + 1][y]; + } + + if(numGrid[0].length - y > 1) { //Adding the item below + finalSum += numGrid[x][y + 1]; + + if(x > 0) { //Adding the item below left + finalSum += numGrid[x - 1][y + 1]; + } + + if(numGrid.length - x > 1) { //Adding the item below right + finalSum += numGrid[x + 1][y + 1]; + } + } + return finalSum; + } +} From 72c3809145699597caf527eb346442836d2e98e6 Mon Sep 17 00:00:00 2001 From: Lukas Kohlmaier Date: Wed, 9 Oct 2019 21:49:30 +0200 Subject: [PATCH 2/2] Implemented LargestProductInGrid in Java Implemented LargestProductInGrid in Java --- Solutions/LargestProductInGrid-Java/.classpath | 10 ---------- Solutions/LargestProductInGrid-Java/.project | 17 ----------------- .../.settings/org.eclipse.jdt.core.prefs | 14 -------------- .../LargestProductInGrid.class | Bin 1732 -> 0 bytes .../LargestProductInGrid.java | 0 5 files changed, 41 deletions(-) delete mode 100644 Solutions/LargestProductInGrid-Java/.classpath delete mode 100644 Solutions/LargestProductInGrid-Java/.project delete mode 100644 Solutions/LargestProductInGrid-Java/.settings/org.eclipse.jdt.core.prefs delete mode 100644 Solutions/LargestProductInGrid-Java/bin/com/luko/LargestProductInGrid/LargestProductInGrid.class rename Solutions/{LargestProductInGrid-Java/src/com/luko/LargestProductInGrid => }/LargestProductInGrid.java (100%) diff --git a/Solutions/LargestProductInGrid-Java/.classpath b/Solutions/LargestProductInGrid-Java/.classpath deleted file mode 100644 index c0f260f..0000000 --- a/Solutions/LargestProductInGrid-Java/.classpath +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/Solutions/LargestProductInGrid-Java/.project b/Solutions/LargestProductInGrid-Java/.project deleted file mode 100644 index ad95641..0000000 --- a/Solutions/LargestProductInGrid-Java/.project +++ /dev/null @@ -1,17 +0,0 @@ - - - LargestProductInGrid-Java - - - - - - org.eclipse.jdt.core.javabuilder - - - - - - org.eclipse.jdt.core.javanature - - diff --git a/Solutions/LargestProductInGrid-Java/.settings/org.eclipse.jdt.core.prefs b/Solutions/LargestProductInGrid-Java/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 71f736f..0000000 --- a/Solutions/LargestProductInGrid-Java/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,14 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=12 -org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve -org.eclipse.jdt.core.compiler.compliance=12 -org.eclipse.jdt.core.compiler.debug.lineNumber=generate -org.eclipse.jdt.core.compiler.debug.localVariable=generate -org.eclipse.jdt.core.compiler.debug.sourceFile=generate -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning -org.eclipse.jdt.core.compiler.release=enabled -org.eclipse.jdt.core.compiler.source=12 diff --git a/Solutions/LargestProductInGrid-Java/bin/com/luko/LargestProductInGrid/LargestProductInGrid.class b/Solutions/LargestProductInGrid-Java/bin/com/luko/LargestProductInGrid/LargestProductInGrid.class deleted file mode 100644 index 5ac41f9a85eef7aee21b373b2b69f6c0d9df4e09..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1732 zcmb7F-%}f96g^+|+bo2wKxi5u&@Q#r1PZBu*fa^%)|N(7=@bhC4Zsm){X@YNP)gB`zt%^+5Sd$aed3F1_FlP zs;eLYZFRLI&{e2}P5IA8%M^vD9Dl)Jn!$A{67-qXL$*>V(*O>#Ywa) zxQ*;>rVm)evFmvQX9be~u6?!TdNrrng>wR#rA^1GI-X~J?FO4xz|*?Bp$27bkcqX^ zs$1@kwOh1e7{gmimbY0geSAY>$e0+%gh15Z-gbP>Y9w9C9C7Y2$ai6qDp`B&>{%6i zQDE}8?EjHtn&lMH%OS^E6YpY<>k%~CQVX0+AEl6waYrv3$O#OD0=+JsiM(pm*j8$K z9HQjkUic+;iSBV1D}i0TbIaZim(4(t48L@J+Y5&s zt2A28s&m6t%QpW5Yxw>p#LycGz7cD5VP%o0i2{`Hxf8Sgsq7o zwyGNTwSrdE=CwKb5Hs4G{t#ypGNJ#1Wa>WpJ7ysviwS-Ht}YV#W0>0X^B-URepiZw z7(CpbT{k97RPKBh*M@eYj?jeX4Q<2}Vv3mcwegCMU6nMv}BBFVM~ z5oi0O7{+;|kml1mK`h66*I}W~fhi&8+ssiwk*5eeB3Ia##1`JC72*9&%6Emey6JV5 zmSp5OuF=x*A)|(%zhXh%z;(eF@DjQhjQl}bG4&(TktxSOwIL6*V(K1pBkXs0IwfmU zYsKMv=nv1b)L}zO{vUM|KJpWp zw&neZLV^uPaDie>@|5N1FX9|#Foju)a*0yqP^Ps^8P|F8DcLua=vxZ(9TxBdZsI;Z q4kfqRDuhxpF&>0c@~?p&H$usks6B|j