๋ฌธ์ ์ค๋ช
์ํฌ์๋ ์ํ์ ํฌ๊ธฐํ ์ฌ๋์ ์ค๋ง์ ๋๋ค. ์ํฌ์ ์ผ์ธ๋ฐฉ์ ๋ชจ์๊ณ ์ฌ์ ์ํ ๋ฌธ์ ๋ฅผ ์ ๋ถ ์ฐ์ผ๋ ค ํฉ๋๋ค. ์ํฌ์๋ 1๋ฒ ๋ฌธ์ ๋ถํฐ ๋ง์ง๋ง ๋ฌธ์ ๊น์ง ๋ค์๊ณผ ๊ฐ์ด ์ฐ์ต๋๋ค.
1๋ฒ ์ํฌ์๊ฐ ์ฐ๋ ๋ฐฉ์: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ...
2๋ฒ ์ํฌ์๊ฐ ์ฐ๋ ๋ฐฉ์: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, ...
3๋ฒ ์ํฌ์๊ฐ ์ฐ๋ ๋ฐฉ์: 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, 3, 3, 1, 1, 2, 2, 4, 4, 5, 5, ...
1๋ฒ ๋ฌธ์ ๋ถํฐ ๋ง์ง๋ง ๋ฌธ์ ๊น์ง์ ์ ๋ต์ด ์์๋๋ก ๋ค์ ๋ฐฐ์ด answers๊ฐ ์ฃผ์ด์ก์ ๋, ๊ฐ์ฅ ๋ง์ ๋ฌธ์ ๋ฅผ ๋งํ ์ฌ๋์ด ๋๊ตฌ์ธ์ง ๋ฐฐ์ด์ ๋ด์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ ์ฌํญ
- ์ํ์ ์ต๋ 10,000 ๋ฌธ์ ๋ก ๊ตฌ์ฑ๋์ด์์ต๋๋ค.
- ๋ฌธ์ ์ ์ ๋ต์ 1, 2, 3, 4, 5์ค ํ๋์ ๋๋ค.
- ๊ฐ์ฅ ๋์ ์ ์๋ฅผ ๋ฐ์ ์ฌ๋์ด ์ฌ๋ฟ์ผ ๊ฒฝ์ฐ, returnํ๋ ๊ฐ์ ์ค๋ฆ์ฐจ์ ์ ๋ ฌํด์ฃผ์ธ์.
์ ์ถ๋ ฅ ์
answers | return |
[1,2,3,4,4] | [1] |
[1,3,2,4,2] | [1,2,3] |
์ ์ถ๋ ฅ ์ ์ค๋ช
์ ์ถ๋ ฅ ์ #1
- ์ํฌ์ 1์ ๋ชจ๋ ๋ฌธ์ ๋ฅผ ๋งํ์ต๋๋ค.
- ์ํฌ์ 2๋ ๋ชจ๋ ๋ฌธ์ ๋ฅผ ํ๋ ธ์ต๋๋ค.
- ์ํฌ์ 3์ ๋ชจ๋ ๋ฌธ์ ๋ฅผ ํ๋ ธ์ต๋๋ค.
๋ฐ๋ผ์ ๊ฐ์ฅ ๋ฌธ์ ๋ฅผ ๋ง์ด ๋งํ ์ฌ๋์ ์ํฌ์ 1์ ๋๋ค.
์ ์ถ๋ ฅ ์ #2
- ๋ชจ๋ ์ฌ๋์ด 2๋ฌธ์ ์ฉ์ ๋ง์ท์ต๋๋ค.
์ด ๋ฌธ์ ๋ ์ํฌ์ 3๋ช ์ด ๊ฐ๊ฐ ์ฐ๋ ๋ฐฉ์์ด ์๋๋ฐ
๋ฌธ์ ์ ๋ต์ด ์ฃผ์ด์ก์ ๋ ๋๊ฐ ๋ ๋ง์ด ๋ง์ถ๋ ์ง ์์๋ด๋ ๋ฌธ์ ์ด๋ค.
โ
๊ฐ๊ฐ ์ฐ๋ ๋ฐฉ์์ ๋ฐฐ์ด์ ์ ์ฅํ๊ณ
๋ฌธ์ ์ ๊ฐ์๋งํผ ๋ฐ๋ณต๋ฌธ์ ๋๋ฆฌ๋ฉด์
์ผ๋ง๋ ๋ง์ถ๋ ์ง ์ธ์๋ค.
โ
์ฌ๊ธฐ์๋ ๋ฐฐ์ด์ ๋์ ๋ค๋ค๋์ผ๋ฉด
์ฒ์์ผ๋ก ๋ค์ ๋์๊ฐ๋ฉด์ ๋ฐ๋ณต๋์ด์ผํ๊ธฐ ๋๋ฌธ์
(i%๋ฐฐ์ด์ ์ฌ์ด์ฆ) ๋ฅผ ์จ์ผํ๊ณ ,
๋๊ฐ ๋ ๋ง์ด ๋ง์ท๋ ์ง ์์๋ด์ผํ๋ฏ๋ก
max๋ฅผ ์ฌ์ฉํ๋๋ฐ ๊ตฌ๊ธ๋ง์ ํ๋ค๋ณด๋
{}๋ฅผ ์ฌ์ฉํ๋ฉด ์ธ ๊ฐ์ ๋ณ์๋ฅผ ํ๊บผ๋ฒ์ ๋น๊ตํ ์ ์๋ค๋ ๊ฒ์ ์ฒ์ ์๊ฒ ๋์๋ค.
#include <string>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
vector<int> solution(vector<int> answers) {
vector<int> answer;
int one[5] = {1,2,3,4,5};
int two[8] = {2,1,2,3,2,4,2,5};
int three[10] = {3,3,1,1,2,2,4,4,5,5};
int a=0, b=0, c=0;
int num = answers.size();
for(int i=0;i<num;i++) {
if(answers[i] == one[i%5]) a++;
if(answers[i] == two[i%8]) b++;
if(answers[i] == three[i%10]) c++;
}
if(a == max({a,b,c})) answer.push_back(1);
if(b == max({a,b,c})) answer.push_back(2);
if(c == max({a,b,c})) answer.push_back(3);
return answer;
}
https://programmers.co.kr/learn/courses/30/lessons/42840
'๐ป Computer Science > ๐ Problem Solving' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ์ฃผ์ ๊ฐ๊ฒฉ_์คํ/ํ (C++) (0) | 2022.02.02 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] ๋ ๊ฐ ๋ฝ์์ ๋ํ๊ธฐ_์๊ฐ ์ฝ๋ ์ฑ๋ฆฐ์ง ์์ฆ1 (C++) (0) | 2022.02.02 |
[ํ๋ก๊ทธ๋๋จธ์ค] k ๋ฒ์งธ ์_์ ๋ ฌ (C++) (0) | 2022.02.02 |