https://school.programmers.co.kr/learn/courses/30/lessons/120923#
๋ฌธ์ ์ค๋ช
์ฐ์๋ ์ธ ๊ฐ์ ์ ์๋ฅผ ๋ํด 12๊ฐ ๋๋ ๊ฒฝ์ฐ๋ 3, 4, 5์ ๋๋ค. ๋ ์ ์ num๊ณผ total์ด ์ฃผ์ด์ง๋๋ค. ์ฐ์๋ ์ num๊ฐ๋ฅผ ๋ํ ๊ฐ์ด total์ด ๋ ๋, ์ ์ ๋ฐฐ์ด์ ์ค๋ฆ์ฐจ์์ผ๋ก ๋ด์ returnํ๋๋ก solutionํจ์๋ฅผ ์์ฑํด๋ณด์ธ์.
์ ํ์ฌํญ
- 1 ≤ num ≤ 100
- 0 ≤ total ≤ 1000
- num๊ฐ์ ์ฐ์๋ ์๋ฅผ ๋ํ์ฌ total์ด ๋ ์ ์๋ ํ ์คํธ ์ผ์ด์ค๋ ์์ต๋๋ค.
์ฝ๋ฉํ ์คํธ ์ ๋ฌธ ๋ฌธ์ ์ค์
์ ๋ต๋ฅ ์ด ๋ฎ์ ๋ฌธ์ ๋ค ์ค ํ๋์ด๋ค.
ํ ์คํธ์ผ์ด์ค์์ ๊ท์น์ ์ฐพ์์ ๊ณต์ํ์์ผ์ผ ํ๋ค!
์ด ์์๋ฅผ ๋ณด๋
result์ ๊ฐ์ด๋ฐ ์ซ์๋ ํญ์ total/num์ ๊ฐ(mid)์ด๋ค.
๊ทธ๋ฌ๋ฉด num์ด ํ์์ผ ๋ ๋ฆฌ์คํธ์ ์์๊ฐ์ mid - num/2์ด๋ค.
๊ทธ๋ฐ๋ฐ num์ด ์ง์์ผ ๋๋ num/2๋ฒ์งธ์ mid๊ฐ ์์ผ๋ฏ๋ก ์์๊ฐ์ด mid - num/2 + 1์ด ๋๋ค.
๋์ ํ์ด
#include <string>
#include <vector>
using namespace std;
vector<int> solution(int num, int total) {
vector<int> answer;
int mid = total/num;
int start = mid - num/2;
if(num%2==0) start += 1;
for(int i=0; i<num; ++i){
answer.push_back(start+i);
}
return answer;
}
'๐ ์๊ณ ๋ฆฌ์ฆ > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[C++/PGS] Lv.0 : ์น์์ด (1) (๊ตฌํ) (0) | 2023.05.27 |
---|---|
[C++/PGS] Lv.0 : ๊ฒน์น๋ ์ ๋ถ์ ๊ธธ์ด (๊ตฌํ) (0) | 2023.05.27 |
[C++/PGS] Lv.2 : ์ ๋ ฅ๋ง์ ๋๋ก ๋๋๊ธฐ (์์ ํ์/bfs/dfs) (1) | 2023.05.26 |
[C++/PGS] Lv.2 : ํผ๋ก๋ (์์ ํ์) (0) | 2023.05.26 |
[C++/PGS] Lv.2 : ๋ค๋ฆฌ๋ฅผ ์ง๋๋ ํธ๋ญ (ํ) (0) | 2023.04.13 |