Biểu thức tính toán trên dãy
Submit solution
Points:
3 (partial)
Time limit:
1.0s
Memory limit:
977M
Author:
Problem types
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG
Cho dãy số nguyên gồm n phần tử \(a_1, a_2, ... a_n\) bạn hãy tính và xuất kết quả của các biểu thức sau đây
\[S_1 = a_1^2+a_2^2+...+a_n^2\]
\[S_2 = a_1*a_n+a_2 * a_{n-1} +... +a_{n-1}*a_2+a_n*a_1 \]
\[S_3 = a_1*a_2 + a_2*a_3+...+a_{n-1}*a_n\]
Input
Dòng đầu chứa số nguyên dương n \((2 \le n \le 100000)\)
Dòng tiếp theo chứa n số nguyên có giá trị tuyệt đối không vượt quá \(10^3\)
Oupput
Ba dòng mỗi dòng tương ứng với giá trị của lần lượt \(S_1, S_2, S_3\).
Ví dụ 1
Input
5
1 2 3 4 5
Output
55
35
40
Comments
include <iostream>
include <vector>
using namespace std;
int main() { int n; cin>>n;int a[n]; for(int i=0;i<n;i++) cin>>a[i]; int s1=0,s2=0,s3=0; for(int i=0;i<=n;i++) s1=s1+a[i]a[i]; int dem=n; for(int i=0;i<n;i++) { s2=s2+a[i]a[dem-1]; dem--; }
for(int i=0;i<n;i++) s3=s3+a[i]*a[i+1];
cout<<s1<<endl; cout<<s2<<endl; cout<<s3<<endl;
}
nên sửa lại đề thành n>=2 ạ.
Cảm ơn bạn đã góp ý, mình sẽ xem lại