ภาพรวมปัญหา
หาพจน์ที่ N ของอนุกรม: 1, 6, 15, 28, 45, ...
เงื่อนไข: ทุกพจน์น้อยกว่าค่าเฉลี่ยของพจน์ก่อนและหลัง 2 หน่วย
ตัวอย่าง
อินพุต
N = 5
เอาต์พุต
45
วิธีแก้ปัญหา
สูตรทั่วไป: T(N) = 2N² - N
โค้ดตัวอย่าง
#include <iostream>
using namespace std;
#define MOD 1000000009
int calcNthTerm(long n) {
return (((2 * n * n) % MOD) - n + MOD) % MOD;
}
int main() {
long N = 19;
cout << N << "th Term of the series is " << calcNthTerm(N);
return 0;
}
เอาต์พุต
19th Term of the series is 703
สรุป
อนุกรม Hexagonal Numbers (จำนวนหกเหลี่ยม) สูตร 2n² - n