수학에는 C 프로그래밍으로 쉽게 풀 수 있는 계열이 많이 있습니다. 이 프로그램은 C 프로그램에서 다음 계열의 합을 구하는 프로그램입니다.
T<sub>n</sub> = n<sup>2</sup> - (n-1)<sup>2</sup>
모든 계열 항의 합을 Sn mod(109 + 7)로 구하고,
Sn = T 1 + T2 + T3 + T4 + ...... + Tn
Input: 229137999 Output: 218194447
Tn은 2n-1로 표현하면 구할 수 있어요
저희처럼 알아요,
=> Tn = n2 - (n-1)2 =>Tn = n2 - (1 + n2 - 2n) =>Tn = n2 - 1 - n2 + 2n =>Tn = 2n - 1. find ∑Tn. ∑Tn = ∑(2n – 1) Reduce the above equation to, =>∑(2n – 1) = 2*∑n – ∑1 =>∑(2n – 1) = 2*∑n – n. here, ∑n is the sum of first n natural numbers. As known the sum of n natural number ∑n = n(n+1)/2. Now the equation is, ∑Tn = (2*(n)*(n+1)/2)-n = n2 The value of n2 can be large. Instead of using n2 and take the mod of the result. So, using the property of modular multiplication for calculating n2: (a*b)%k = ((a%k)*(b%k))%k
#include <iostream> using namespace std; #define mod 1000000007 int main() { long long n = 229137999; cout << ((n%mod)*(n%mod))%mod; return 0; }
위 내용은 C/C++ 프로그램: n 제곱 빼기(n-1) 제곱을 n번째 항목으로 하는 시퀀스의 합을 계산합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!