https://www.acmicpc.net/problem/11501
11501λ²: μ£Όμ
μ λ ₯μ 첫 μ€μλ ν μ€νΈμΌμ΄μ€ μλ₯Ό λνλ΄λ μμ°μ Tκ° μ£Όμ΄μ§λ€. κ° ν μ€νΈμΌμ΄μ€ λ³λ‘ 첫 μ€μλ λ μ μλ₯Ό λνλ΄λ μμ°μ N(2 ≤ N ≤ 1,000,000)μ΄ μ£Όμ΄μ§κ³ , λμ§Έ μ€μλ λ λ³ μ£Όκ°λ₯Ό λν
www.acmicpc.net
λ¬Έμ
νμ€μ΄λ μμ¦ μ£Όμμ λΉ μ Έμλ€. κ·Έλ λ―Έλλ₯Ό λ΄λ€λ³΄λ λμ΄ λ°μ΄λ, λ λ³λ‘ μ£Όκ°λ₯Ό μμνκ³ μΈμ λ κ·Έκ² λ§μλ¨μ΄μ§λ€. λ§€μΌ κ·Έλ μλ μΈ κ°μ§ μ€ ν νλμ νλ€.
- μ£Όμ νλλ₯Ό μ°λ€.
- μνλ λ§νΌ κ°μ§κ³ μλ μ£Όμμ νλ€.
- μ무κ²λ μνλ€.
νμ€μ΄λ λ―Έλλ₯Ό μμνλ λ°μ΄λ μλͺ©μ κ°μ‘μ§λ§, μ΄λ»κ² ν΄μΌ μμ μ΄ μ΅λ μ΄μ΅μ μ»μ μ μλμ§ λͺ¨λ₯Έλ€. λ°λΌμ λΉμ μκ² λ λ³λ‘ μ£Όμμ κ°κ²©μ μλ €μ£Όμμ λ, μ΅λ μ΄μ΅μ΄ μΌλ§λ λλμ§ κ³μ°μ ν΄λ¬λΌκ³ λΆννλ€.
μλ₯Ό λ€μ΄ λ μκ° 3μΌμ΄κ³ λ λ³λ‘ μ£Όκ°κ° 10, 7, 6μΌ λ, μ£Όκ°κ° κ³μ κ°μνλ―λ‘ μ΅λ μ΄μ΅μ 0μ΄ λλ€. κ·Έλ¬λ λ§μ½ λ λ³λ‘ μ£Όκ°κ° 3, 5, 9μΌ λλ μ²μ λ λ μ μ£Όμμ νλμ© μ¬κ³ , λ§μ§λ§λ λ€ νμ λ²λ¦¬λ©΄ μ΄μ΅μ΄ 10μ΄ λλ€.
μ λ ₯
μ λ ₯μ 첫 μ€μλ ν μ€νΈμΌμ΄μ€ μλ₯Ό λνλ΄λ μμ°μ Tκ° μ£Όμ΄μ§λ€. κ° ν μ€νΈμΌμ΄μ€ λ³λ‘ 첫 μ€μλ λ μ μλ₯Ό λνλ΄λ μμ°μ N(2 ≤ N ≤ 1,000,000)μ΄ μ£Όμ΄μ§κ³ , λμ§Έ μ€μλ λ λ³ μ£Όκ°λ₯Ό λνλ΄λ Nκ°μ μμ°μλ€μ΄ 곡백μΌλ‘ ꡬλΆλμ΄ μμλλ‘ μ£Όμ΄μ§λ€. λ λ³ μ£Όκ°λ 10,000μ΄νλ€.
μΆλ ₯
κ° ν μ€νΈμΌμ΄μ€ λ³λ‘ μ΅λ μ΄μ΅μ λνλ΄λ μ μ νλλ₯Ό μΆλ ₯νλ€. λ΅μ λΆνΈμλ 64bit μ μνμΌλ‘ νν κ°λ₯νλ€.
νμ΄
// Authored by : seondal
// Co-authored by : -
// #include <bits/stdc++.h>
#include <iostream>
#include <vector>
using namespace std;
int main() {
ios_base::sync_with_stdio(false); cin.tie(NULL);
int t;
cin >> t;
while(t--) {
int n;
cin >> n;
vector<int> v(n);
for(int i=0; i<n; i++)
cin >> v[i];
int cur=0;
long long money=0;
for(int i=n-1; i>=0; i--) {
if(v[i] > cur) {
cur = v[i];
} else {
money += cur - v[i];
}
}
cout << money << "\n";
}
return 0;
}
/*
*/
'ποΈ ICPC Sinchon > Greedy' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[BOJ][C++] λ°±μ€ 16206λ²: λ‘€μΌμ΄ν¬ (0) | 2023.04.12 |
---|---|
[BOJ][C++] λ°±μ€ 27112λ²: μκ° μΈ κ·Όλ¬΄ λ©μΆ°! (0) | 2023.02.01 |
[BOJ][C++] 20921λ²: κ·Έλ κ³ κ·Έλ° μ¬μ΄ (0) | 2023.01.31 |
[BOJ][C++] λ°±μ€ 14659λ²: νμ‘°μμ΄μ 리νκ³ μ΄γ γ (0) | 2023.01.31 |
[BOJ G4][C++] λ°±μ€ 1339λ²: λ¨μ΄ μν (0) | 2022.10.11 |