[Programmers] Lv2. ์ตœ์†Ÿ๊ฐ’ ๋งŒ๋“ค๊ธฐ | C++

2023. 6. 11. 14:03ใ†Coding Test/Programmers

๐Ÿ”—๋ฌธ์ œ ๋ณด๋Ÿฌ๊ฐ€๊ธฐ
 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

 

๐Ÿ‘จโ€๐Ÿ’ปํ’€์ด ๊ณผ์ •

 

์ž์—ฐ์ˆ˜๋กœ๋งŒ ์ด๋ฃจ์–ด์ง„ ๊ธธ์ด๊ฐ€ ๊ฐ™์€ ๋‘ ๋ฐฐ์—ด์ด๋‹ˆ, ํ•˜๋‚˜๋Š” ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ, ๋‹ค๋ฅธ ํ•˜๋‚˜๋Š” ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ ํ›„ ๊ฐ๊ฐ ๋‚ด์ ํ•˜๋ฉด ๋˜๊ฒ ๋‹ค ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, vector A = { a1,a2,a3 }, vector B = { b1,b2,b3 } ๋ผ๊ณ  ํ•œ๋‹ค๋ฉด, ๋ฒกํ„ฐ์˜ ๋‚ด์ (Dot product) = { a1b1+a2b2+a3b3 }์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

 

โœ๏ธ์†Œ์Šค ์ฝ”๋“œ ๋ฐ ๊ฒฐ๊ณผ

#include <vector>
#include <algorithm>
using namespace std;

int solution(vector<int> A, vector<int> B)
{
    int answer = 0;
    sort(A.begin(), A.end());
    sort(B.begin(), B.end(), greater<int>());
    
    for(int i = 0; i < A.size(); i++)
        answer += (A[i] * B[i]);
    return answer;
}

 

 

 

๋ชฐ๋ž๋Š”๋ฐ, <numeric> ํ—ค๋”์— ๋‘ ์‹œํ€€์Šค์˜ ๋‚ด์ ์„ ๊ณ„์‚ฐํ•ด์ฃผ๋Š” inner_product()๋ž€ ํ•จ์ˆ˜๊ฐ€ ์žˆ๋”๊ตฐ์š”.

 

 

728x90
๋ฐ˜์‘ํ˜•