문제 링크
https://www.acmicpc.net/problem/14929
문제
입력
n과 xi가 주어짇나. n은 10만 이하ㅇ고, xi는 젗ㄹ댓값이 100이하인 정수디이다.
출력
위에서 구하란 걸 구하면 된ㄷ.
예제 입력 1
3
1 -2 3
예제 출력 1
-5
알고리즘 분류
- 수학
- 누적 합
풀이
누적 합을 구하고, i가 1부터 N까지인 i번째 수와 i+1번째 수부터 N번째 수까지의 합의 곱을 더해준다.
코드
#include <iostream>
#include <string>
#include <cmath>
#include <unordered_set>
#include <unordered_map>
#include <bitset>
#include <stack>
#include <queue>
#include <vector>
#include <algorithm>
#include <climits>
#define FASTIO cin.tie(NULL); cout.tie(NULL); ios::sync_with_stdio(false);
#define MAX 100001
#define LL long long
#define INF 1e9
using namespace std;
int N;
LL MAP[MAX];
LL Sum[MAX];
LL Answer = 0;
void Input() {
cin >> N;
for (int i = 1; i <= N; i++) {
cin >> MAP[i];
Sum[i] = Sum[i - 1] + MAP[i];
}
}
void Settings() {
for (int i = 1; i < N; i++) {
Answer += (Sum[N] - Sum[i]) * MAP[i];
}
}
void Find_Answer() {
cout << Answer << "\n";
}
int main() {
FASTIO
Input();
Settings();
Find_Answer();
return 0;
}
'BOJ > Silver' 카테고리의 다른 글
[BOJ/Silver 4] 백준 17203 ∑|ΔEasyMAX|(C++) (0) | 2022.03.22 |
---|---|
[BOJ/Silver 4] 백준 13900 순서쌍의 곱의 합(C++) (0) | 2022.03.21 |
[BOJ/Silver 1] 백준 21737 SMUPC 계산기(C++) (0) | 2022.03.17 |
[BOJ/Silver 2] 백준 22233 가희와 키워드(C++) (0) | 2022.03.16 |
[BOJ/Silver 2] 백준 5177 출력 형식이 잘못되었습니다(C++) (0) | 2022.03.16 |