728x90
https://school.programmers.co.kr/learn/courses/30/lessons/12938#
ํ๋ก๊ทธ๋๋จธ์ค ๋ ๋ฒจ 3.
ํน๋ณํ ์๊ณ ๋ฆฌ์ฆ์ ํ์ํ์ง ์๊ณ , ์ํ์ ์ ๊ทผ์ผ๋ก ํด๊ฒฐํ๋ฉด ๋๋ค.
s/n (ํ๊ท )์ ๊ฐ์ฅ ๊ฐ๊น์ด ๊ฐ๋ค์ ๋ฆฌ์คํธ๊ฐ ์ต๋ ๊ณฑ์ ๊ฐ์ง๋ค.
ํํธ) ์๋ฅผ ๋ค๋ฉด
s = 10, n = 3์ผ ๋
s/n = 3, s%n = 1์ด๋ฏ๋ก
์ต๋ ๊ณฑ์ ๊ฐ์ง๋ ๋ฆฌ์คํธ๋ { 3, 3, 4 } ์ด๋ค.
๋์ ํ์ด
#include <string>
#include <vector>
using namespace std;
vector<int> solution(int n, int s) {
vector<int> answer;
if(n>s) {
answer.push_back(-1);
return answer;
}
int avg = s / n;
// ํฉ์ ๊ฐฏ์๋ก ๋๋ ๊ฐ๊ณผ ๊ฐ์ฅ ๊ฐ๊น์ด ์๋ค -> ๊ณฑ์ด ์ต๋๊ฐ ๋จ
int last = s % n;
// ๋จ์ last๊ฐ์ 1์ฉ ๋ถ๋ฐฐํ๋ฉด ๋๋ค!
for(int i=0; i<n; ++i){
if(i >= n-last) answer.push_back(avg+1);
else answer.push_back(avg);
}
if(answer.size()<1) answer.push_back(-1);
return answer;
}
728x90
'๐ ์๊ณ ๋ฆฌ์ฆ > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[C++/PGS] Lv.0 : ๋ฑ์ ๋งค๊ธฐ๊ธฐ (0) | 2025.01.13 |
---|---|
[C++/PGS] Lv.3 : ์ซ์ ๊ฒ์ (๊ทธ๋ฆฌ๋ Greedy) (0) | 2025.01.07 |
[C++/PGS] Lv.3 : ์ฌ ์ฐ๊ฒฐํ๊ธฐ (๊ทธ๋ฆฌ๋ Greedy) (0) | 2024.11.01 |
[C++/PGS] Lv.1 : ๋ฌ๋ฆฌ๊ธฐ ๊ฒฝ์ฃผ (ํด์๋งต Map) (0) | 2024.10.03 |
[MySQL/PGS] Lv.1 : ์๋์ฐจ ๋์ฌ ๊ธฐ๋ก์์ ์ฅ๊ธฐ/๋จ๊ธฐ ๋์ฌ ๊ตฌ๋ถํ๊ธฐ (0) | 2023.09.19 |