2018๋ KAKAO BLIND RECRUITMENT
๋ฌธ์
์คํจ์จ์ ๊ตฌํ๋ ์ฝ๋๋ฅผ ์์ฑํ๋ผ.
- ์คํจ์จ์ ๋ค์๊ณผ ๊ฐ์ด ์ ์ํ๋ค.
- ์คํ ์ด์ง์ ๋๋ฌํ์ผ๋ ์์ง ํด๋ฆฌ์ดํ์ง ๋ชปํ ํ๋ ์ด์ด์ ์ / ์คํ ์ด์ง์ ๋๋ฌํ ํ๋ ์ด์ด ์
์ ์ฒด ์คํ ์ด์ง์ ๊ฐ์ N, ๊ฒ์์ ์ด์ฉํ๋ ์ฌ์ฉ์๊ฐ ํ์ฌ ๋ฉ์ถฐ์๋ ์คํ ์ด์ง์ ๋ฒํธ๊ฐ ๋ด๊ธด ๋ฐฐ์ด stages๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง ๋, ์คํจ์จ์ด ๋์ ์คํ ์ด์ง๋ถํฐ ๋ด๋ฆผ์ฐจ์์ผ๋ก ์คํ ์ด์ง์ ๋ฒํธ๊ฐ ๋ด๊ฒจ์๋ ๋ฐฐ์ด์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํ๋ผ.
ํ์ด
์ ํ์ฌํญ์ ์ ๋๋ก ๋ชป ๋ณด๊ณ ํ์ด์ ํ๋ ธ์๋ค.
์คํ ์ด์ง์ ๋๋ฌํ ์ ์ ๊ฐ ์๋ ๊ฒฝ์ฐ ํด๋น ์คํ ์ด์ง์ ์คํจ์จ์ 0 ์ผ๋ก ์ ์ํ๋ค.
์ด ๋ถ๋ถ์ด ์๋๋ฐ ํ๋ ธ์ ๋์ ๋ก์ง์ ๋๋ฌํ ์คํ ์ด์ง ๋ฒํธ๋ค ์ค ๊ฐ์ฅ ํฐ ๊ฒ์ Max๋ผ๊ณ ๋๊ณ v ๋ผ๋ vector ๊ฐ์ฒด์ ๋ฃ์ ๋ Max๋ถํฐ ์ํํ๋๋ก ํ์๋ค.
ํ์ง๋ง ์ด ๋ถ๋ถ์ ์์ ๊ฐ ์๋์ ๊ฐ์ด ๋์ ์์ ๋๋
#testcase
7
1,2,3,4,5,6
์์ ๋ต์์ด [6,5,4,3,2,1,7] ์ด์ง๋ง 7์ด ์ถ๋ ฅ๋์ง ์๋ ํ์์ด ๋ฐ์ํ๋ค. ๋ฐ๋ผ์ Max๋ฅผ N์ผ๋ก ์ด๊ธฐํ ์์ผ๋๊ณ ๋ฐ๋ณต๋ฌธ์ ๋ ๋ Max๋ณด๋ค ํฐ ์คํ ์ด์ง ๋ฒํธ๊ฐ ๋์ค๋ฉด ๊ฐฑ์ ์ํค ๋๋ก ์์ ํ๋ ๋ง์ถ์ ์์๋ค.
์ฝ๋
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
#include <algorithm>
#include <vector>
using namespace std;
typedef pair<double, int> p;
bool cmp(p a, p b) {
if (a.first == b.first) {
return a.second < b.second;
}
return a.first > b.first;
}
vector<int> solution(int N, vector<int> stages) {
vector<int> answer;
vector<p> v;
int arr[502] = { 0 }, Max = N;
for (int i = 0; i < stages.size(); i++) {
arr[stages[i]]++;
Max = stages[i] > Max ? stages[i] : Max;
}
int people = 0;
for (int i = Max; i > 0; i--) {
people += arr[i];
if (i <= N) {
if (!arr[i])v.push_back({ 0, i });
else v.push_back({ ((double)arr[i] / people), i });
}
}
sort(v.begin(), v.end(), cmp);
for (int i = 0; i < v.size(); i++) {
answer.push_back(v[i].second);
}
return answer;
}
int main() {
solution(5, { 2, 1, 2, 6, 2, 4, 3, 3 });
return 0;
}
|
cs |
'๐ฅ PS(Problem Solving) ๐ฅ > programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[programmers] ์์ ํ์, ์นดํซ (0) | 2020.03.11 |
---|---|
[programmers] ์์ ํ์, ๋ชจ์๊ณ ์ฌ (0) | 2020.03.11 |
[programmers] ์์ ํ์, ์ซ์ ์ผ๊ตฌ (0) | 2020.03.11 |
[programmers] ์์ ํ์, ์์์ฐพ๊ธฐ (0) | 2020.01.17 |
[ํ๋ก๊ทธ๋๋จธ์ค] #42888 ์คํ์ฑํ ๋ฐฉ (0) | 2019.09.09 |
๋๊ธ