Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- fun getItem(num: Int): Int = 1 + num * 2
- fun getRowRange(num: Int): IntProgression {
- return ((num - 1) * (num) / 2) until (num * (num + 1) / 2)
- }
- fun getRowValueRange(num: Int): IntProgression =
- getRowRange(num).let { getItem(it.first)..getItem(it.last) step 2 }
- fun getRowSum(num: Int): Int =
- getRowValueRange(num).let {
- // a_1 + a_n a_n - a_1
- // --------- * ( --------- + 1 )
- // 2 a_2 - a_1
- ((it.first + it.last) / 2) * ((it.last - it.first) / (it.first + it.step - it.first) + 1)
- }
- fun main() {
- println(getRowSum(2))
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement