๋ฌธ์
์๋ ์์ ์ ์ํ์ด ํญ์ ํฐ ๊ณจ์นซ๊ฑฐ๋ฆฌ์๋ ๋๋ผ๊ฐ ์์๋ค. ์ด ๋๋ผ์ ๊ตญ์ ๊น์ง๋ฏผ์ ๋ค์๊ณผ ๊ฐ์ ๋ฌธ์ ๋ฅผ ๋ด๊ณ ํฐ ์๊ธ์ ๊ฑธ์๋ค.
๊ธธ์ด๊ฐ N์ธ ์ ์ ๋ฐฐ์ด A์ B๊ฐ ์๋ค. ๋ค์๊ณผ ๊ฐ์ด ํจ์ S๋ฅผ ์ ์ํ์.
S = A[0] × B[0] + ... + A[N-1] × B[N-1]
S์ ๊ฐ์ ๊ฐ์ฅ ์๊ฒ ๋ง๋ค๊ธฐ ์ํด A์ ์๋ฅผ ์ฌ๋ฐฐ์ดํ์. ๋จ, B์ ์๋ ์๋ ์ฌ๋ฐฐ์ดํ๋ฉด ์ ๋๋ค.
S์ ์ต์๊ฐ์ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ N์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์๋ A์ ์๋ N๊ฐ์ ์๊ฐ ์์๋๋ก ์ฃผ์ด์ง๊ณ , ์ ์งธ ์ค์๋ B์ ์๋ ์๊ฐ ์์๋๋ก ์ฃผ์ด์ง๋ค. N์ 50๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๊ณ , A์ B์ ๊ฐ ์์๋ 100๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ด ์๋ ์ ์์ด๋ค.
์ถ๋ ฅ
์ฒซ์งธ ์ค์ S์ ์ต์๊ฐ์ ์ถ๋ ฅํ๋ค.
์ค๋ฒ4ํฐ์ด ๋ฌธ์ ์ด๋ค. ์์ฆ ํ๋ก๊ทธ๋๋จธ์ค๋ง ํ๋ค๊ฐ ์ค๋๋ง์ ๋ฐฑ์ค ํ์๋๋ฐ
๊ทธ๋๋ ๋ฌธ์ ๋งใ ์ด ํ๋ค๋ณด๋๊น ๋ฐฑ์ค ์ค๋ฒ๋ ๋ฌด๋ํ๊ฒ ํ๋ฆฌ๋๋ฏ
๋ฌธ์ ์กฐ๊ฑด์ด ์ฒ์์๋ ์ฅ์ค๋ฌ์ ๋๋ฐ, ๊ทธ๋ฅ ์ผ์ผ์ด ๊ณ์ฐํ ํ์ ์์ด (์ค๋ฆ์ฐจ์ ๋ฐฐ์ด * ๋ด๋ฆผ์ฐจ์ ๋ฐฐ์ด) ํ๋ฉด ์ต์๊ฐ์ด๋ผ๋๊ฑธ ๊นจ๋ฌ์๋ค
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
bool compare(int i, int j){
return j < i;
}
int main(){
ios_base::sync_with_stdio(false); cin.tie(NULL);
vector<int> v[2];
int n;
int k;
int result = 0;
cin >> n;
for (int i = 0; i < 2; ++i){
for (int j = 0; j < n; ++j){
cin >> k;
v[i].push_back(k);
}
}
sort(v[0].begin(), v[0].end());
sort(v[1].begin(), v[1].end(), compare);
for (int i = 0; i < n; ++i){
result += v[0][i] * v[1][i];
}
cout << result;
}
โ๐ป vector ์ฌ์ฉ์ ์ต์ํด์ง์!!! string๋ณด๋ค ์ฐ๊ธฐ ํธํ๋ค!
โ๐ป ๋ด๋ฆผ์ฐจ์ ์ ๋ ฌ์๋ bool ํจ์ ๋ง๋ค๊ธฐ. i์ j ๋น๊ต → j<i ๋ฆฌํดํ๊ธฐ
'๐ ์๊ณ ๋ฆฌ์ฆ > BOJ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[C++/๋ฐฑ์ค] 9095 : 1, 2, 3 ๋ํ๊ธฐ (0) | 2023.02.21 |
---|---|
[C++/๋ฐฑ์ค] 1924 : 2007๋ (0) | 2023.02.21 |
[C++/๋ฐฑ์ค] 25178 : ๋๋ผ๋ฌด๋ฆฌ ํด์ง (0) | 2022.08.09 |
[C++/๋ฐฑ์ค] 2502 : ๋ก ๋จน๋ ํธ๋์ด (0) | 2022.08.01 |
[C++/๋ฐฑ์ค] 11650, 11651 : ์ขํ ์ ๋ ฌํ๊ธฐ 1, 2 (0) | 2022.08.01 |