aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorziameraj16 <ziameraj16@gmail.com>2021-02-18 21:45:53 +0000
committerziameraj16 <ziameraj16@gmail.com>2021-02-18 21:45:53 +0000
commit96ab1df97d72bc1be8f5dd015c7ae4b52392bc11 (patch)
tree421911d78ecaa5c8caf70d839a70525a91927e55
parent02998e65eeee00e6c514d90bf43c1c94dc94a4a7 (diff)
downloadperlweeklychallenge-club-96ab1df97d72bc1be8f5dd015c7ae4b52392bc11.tar.gz
perlweeklychallenge-club-96ab1df97d72bc1be8f5dd015c7ae4b52392bc11.tar.bz2
perlweeklychallenge-club-96ab1df97d72bc1be8f5dd015c7ae4b52392bc11.zip
Kotlin Solution for Triangle sum problem
-rw-r--r--challenge-100/ziameraj16/README.md27
-rw-r--r--challenge-100/ziameraj16/kotlin/TriangleSumKotlin.kt28
2 files changed, 55 insertions, 0 deletions
diff --git a/challenge-100/ziameraj16/README.md b/challenge-100/ziameraj16/README.md
index 9f7ffc3abd..816c1a823c 100644
--- a/challenge-100/ziameraj16/README.md
+++ b/challenge-100/ziameraj16/README.md
@@ -25,3 +25,30 @@ Enter comma separated elements of line 4
5,1,7,2
Output: 8
```
+
+## Kotlin Solution
+
+To compile the code run
+```java
+kotlinc TriangleSumKotlin.kt
+```
+To run
+```java
+kotlin TriangleSumKotlin
+```
+### Example
+```bash
+/perlweeklychallenge-club/challenge-100/ziameraj16/kotlin$ kotlinc TriangleSumKotlin.kt
+/perlweeklychallenge-club/challenge-100/ziameraj16/kotlin$ kotlin TriangleSumKotlin
+Enter number of rows in the triangle
+4
+Enter comma separated elements of line 1
+3
+Enter comma separated elements of line 2
+3,1
+Enter comma separated elements of line 3
+5,2,3
+Enter comma separated elements of line 4
+4,3,1,3
+Output: 7
+```
diff --git a/challenge-100/ziameraj16/kotlin/TriangleSumKotlin.kt b/challenge-100/ziameraj16/kotlin/TriangleSumKotlin.kt
new file mode 100644
index 0000000000..407527c533
--- /dev/null
+++ b/challenge-100/ziameraj16/kotlin/TriangleSumKotlin.kt
@@ -0,0 +1,28 @@
+import java.util.*
+import java.util.stream.Collectors
+
+object TriangleSumKotlin {
+ @JvmStatic
+ fun main(args: Array<String>) {
+ val scanner = Scanner(System.`in`)
+ println("Enter number of rows in the triangle")
+ val numberOfRows = scanner.nextLine().toInt()
+ val list: MutableList<List<Int>?> = ArrayList<List<Int>?>()
+ var i = 1
+ while (i <= numberOfRows) {
+ println("Enter comma separated elements of line $i")
+ val rowElements = Arrays.stream(scanner.nextLine().split(",".toRegex()).toTypedArray()).map { s: String? -> Integer.valueOf(s) }.collect(Collectors.toList())
+ list.add(rowElements)
+ i++
+ }
+ println("Output: " + triangleSum(list))
+ }
+
+ fun triangleSum(list: List<List<Int>?>): Int {
+ var sum = 0
+ for (row in list) {
+ sum += Collections.min(row)
+ }
+ return sum
+ }
+}