問題P5534 XR-3 []算術配列に羅区溶液

ダブルチーズ李私はスパイシーなキャベツでした!

タイトル

この質問は、最近の試験であります問題流出に今すぐソリューション

トピックに引き戻します

質問は、これは等差数列で、あなたを伝えることは非常に明確であったが、

そして、また、あなたの第一項及び第二項、アイテムの数を教えてください。 あなたは昨日ドロップします

公差が減算されていない、あなたの第1項と第2項に知らせますか?

さて、あなたは第一項、寛容とあなたは定期的に使用すると、個々のアイテムとそれを聞いて、一連の間隔を置いた項目の数を知っています。ラインで設定式ああ

最初は式を置きます:

式:SN =(A1 +)×N / 2。

式2:SN = N×A1 + N×(N - 1)×D / 2。

私たちは、使用されるべき式参照してください?

我々は、n知っているので、D、A1;

我々が使用するように、第2式が良いだろう。

そして、次のようそれを証明

シリーズ全体を列挙する:

A1、A2、A3、A4、···(N - 1)。

a1及びdはそれらすべてを置き換えるFN:

A1、(A + D)、(A1 + 2D)、...(A1 + D×(N - 2))、(+ D×(N A1 - 1))。

その後、GNを逆転させましたか?

、 - (1)+ D×(N A1)(A1 + D×(N - 2))、...(A1 + 2D)、(A + D)、A1。

我々は見て、F1 + G1 == F2 + G2 == F3 + G3を取ります。

そこで、我々は、つまり、2 * sのそれらを合計してみてください:

A1×N×2 +(N - 1)×D×N。

そして、2秒ではない、それで割っ?

S = A1×N + N×(N - 1)×D / 2。

髪のスパイシーコード:

#include<bits/stdc++.h>//万能头万岁!
using namespace std;

#define int long long//不开long long见祖先
int head, nxt, n, d;
// head是首项, nxt 是第二项, n是项数

signed main()
{
scanf("%lld%lld%lld", &head, &nxt, &n);//输入
d = nxt - head;//求公差。
printf("%lld", n * head + n * (n - 1) * d / 2);//套公式
return 0;
}

シモンズ:読み、qwqをコピーしてください

おすすめ

転載: www.cnblogs.com/Flash-plus/p/12028337.html