summaryrefslogtreecommitdiff
path: root/AlgoDesignAndTechniqueEdxJava/sources
diff options
context:
space:
mode:
authorHaidong Ji2018-09-07 20:59:25 -0500
committerHaidong Ji2018-09-07 20:59:25 -0500
commitaa32f7835fa2776e29fb42c3bdac06ab1f489d0f (patch)
tree9b858cd4949143c9e12473d46f3ddfba1d9dd48c /AlgoDesignAndTechniqueEdxJava/sources
parent29e054f5ebf164d53319c0bdb348db421f98b942 (diff)
Max Dot Product done.
I wasn't just a little surprised how simple it is.
Diffstat (limited to 'AlgoDesignAndTechniqueEdxJava/sources')
-rw-r--r--AlgoDesignAndTechniqueEdxJava/sources/MaxDotProd.java30
1 files changed, 30 insertions, 0 deletions
diff --git a/AlgoDesignAndTechniqueEdxJava/sources/MaxDotProd.java b/AlgoDesignAndTechniqueEdxJava/sources/MaxDotProd.java
new file mode 100644
index 0000000..77672aa
--- /dev/null
+++ b/AlgoDesignAndTechniqueEdxJava/sources/MaxDotProd.java
@@ -0,0 +1,30 @@
+import java.util.Arrays;
+import java.util.Scanner;
+
+public class MaxDotProd {
+
+ public static void main(String[] args) {
+ Scanner scanner = new Scanner(System.in);
+ int n = scanner.nextInt();
+ int[] a = new int[n];
+ for (int i = 0; i < n; i++) {
+ a[i] = scanner.nextInt();
+ }
+ int[] b = new int[n];
+ for (int i = 0; i < n; i++) {
+ b[i] = scanner.nextInt();
+ }
+ System.out.println(getMaxDotProduct(a, b));
+ }
+
+ public static long getMaxDotProduct(int[] a, int[] b) {
+ Arrays.sort(a);
+ Arrays.sort(b);
+ long result = 0;
+ for (int i = 0; i < b.length; i++) {
+ result = (long) a[i] * b[i] + result;
+ }
+ return result;
+ }
+
+}