fun main() { val n = readLine()!!.toInt(); val list = readLine()!!.split(" ").map {it -> it.toLong()}; var sum = list.reduce {p, q -> p + q}; if (sum % 3L != 0L) { println("No"); return; } sum /= 3; for (i in 1 until 1.shl(n)) { var current = 0L; for (j in 0 until n) { if ((i and 1.shl(j)) > 0) { current += list[j]; } } if (current == 2 * sum) { var mask = i; while (mask > 0) { current = 0L; for (j in 0 until n) { if ((mask and 1.shl(j)) > 0) { current += list[j]; } } if (current == sum) { println("Yes"); return; } mask = (mask - 1) and i; } } } println("No"); } /* C:\Users\kenne\OneDrive\Desktop\competitive_programming\kotlinmain.kt */