信息学奥赛一本通 1035:等差数列末项计算 | OpenJudge NOI 1.3 18
生活随笔
收集整理的這篇文章主要介紹了
信息学奥赛一本通 1035:等差数列末项计算 | OpenJudge NOI 1.3 18
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
【題目鏈接】
ybt 1035:等差數列末項計算
OpenJudge NOI 1.3 18:等差數列末項計算
【題目考點】
1. 等差數列
設等差數列第i項為aia_iai?,相鄰兩項的差為ddd
遞推公式:ai=ai?1+da_i= a_{i-1} + dai?=ai?1?+d
通項公式:an=a1+(n?1)da_n = a_1 + (n-1)dan?=a1?+(n?1)d
2. (擴展)循環
【題解代碼】
解法1:用等差數列的遞推公式ai=ai?1+da_i= a_{i-1} + dai?=ai?1?+d
#include <bits/stdc++.h> using namespace std; int main() {int a1, a2, n, ai;cin>>a1>>a2>>n;int d = a2 - a1;ai = a1;for(int i = 2; i <= n; ++i)ai = ai + d;cout<<ai;return 0; }解法2:用等差數列的通項公式an=a1+(n?1)da_n = a_1 + (n-1)dan?=a1?+(n?1)d
#include <bits/stdc++.h> using namespace std; int main() {int a1, a2, n;cin>>a1>>a2>>n;cout<<a1+(a2-a1)*(n-1);return 0; }總結
以上是生活随笔為你收集整理的信息学奥赛一本通 1035:等差数列末项计算 | OpenJudge NOI 1.3 18的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 信息学奥赛一本通 1924:【03NOI
- 下一篇: 信息学奥赛一本通(1327:【例7.6】