Junior — Middle
1 dan 1 000 000 gacha bo'lgan raqamlar yig'indisini qanday samarali hisoblash mumkin?
sobes.tech AI
AIdan javob
1 dan 1 000 000 gacha bo'lgan raqamlarning yig'indisini samarali hisoblash uchun, raqamlarni siklda yig'ish o'rniga arifmetik progressiya formulasidan foydalanish yaxshiroq. Formula:
[ S = \frac{n \times (n + 1)}{2} ]
bu yerda n = 1 000 000.
Kotlin misoli:
val n = 1_000_000L
val sum = n * (n + 1) / 2
println("1 dan $n gacha bo'lgan yig'indi $sum")
Bu yondashuv doimiy vaqtda ishlaydi va ko'p resurs talab qilmaydi.