- Today
- Total
- Algorithm
- ์๋ฃ๊ตฌ์กฐ
- array
- ๊ตฌํ
- ๋ฐฑ์ค
- ์กธ์ ์ํ
- leetcode
- dp
- ๋ฐฑ์๋
- ์ธํด
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- ์๋ฐ์์ ์
- spring
- ํ๋ก๊ทธ๋๋จธ์ค
- OOP
- Graph
- pytorch
- java
- CS
- BFS
- PS
- ์์์ ๋ ฌ
- ๊ทธ๋ฆฌ๋
- database
- ๋ค์ต์คํธ๋ผ
- ๋ฌธ๋ฒ
- MST
- ์๋ฐ
- tree
- ๋ฒจ๋งํฌ๋
Partially Committed
[2019 ์นด์นด์ค ๊ฐ๋ฐ์ ๊ฒจ์ธ ์ธํด์ญ] ํํ ๋ณธ๋ฌธ
[2019 ์นด์นด์ค ๊ฐ๋ฐ์ ๊ฒจ์ธ ์ธํด์ญ] ํํ
WonderJay 2022. 7. 11. 12:05https://school.programmers.co.kr/learn/courses/30/lessons/64065
1. ์ ๋ ฅ๋ฌธ์์ด์ด "{{1,2},{1,2,3}}" ๊ณผ ๊ฐ์ ํํ๋ก ์ฃผ์ด์ง๋๋ฐ, ๋ค๋ฃจ๊ธฐ ์ฝ๊ฒ ํ๊ธฐ ์ํด์ '{' , ',' , '}' ๊ณผ ๊ฐ์ ๋ฌธ์๋ค์ ๋ชจ๋ ' ' ๊ณต๋ฐฑ์ผ๋ก ๋ฐ๊พธ์ด์ฃผ์๋ค.
2. ๊ทธ๋ฆฌ๊ณ stringstream ์ ์ด์ฉํ์ฌ ๊ณต๋ฐฑ ๋จ์๋ก ๋ฌธ์๋ฅผ ํ์ฑํ๋ค. ๊ฐ๊ฐ์ ์ซ์๊ฐ ๋์จ ํ์๋ฅผ ๊ธฐ๋กํ๊ธฐ ์ํด count ๋ฐฐ์ด์ ์ ์ฅํ๋ค.
3. ๋์จ ํ์๋ฅผ ๊ธฐ๋กํ๋ ์ด์ ๋, ๋ง์ฝ์ ์ ๋ ฅ ๋ฌธ์์ด์ด
- {{2}, {2, 1}, {2, 1, 3}, {2, 1, 3, 4}}
์ ๊ฐ์ด ์ฃผ์ด์ง๋ฉด ๋์ํ๋ ํํ์ {2,1,3,4} ์ด๊ณ , ์ ๋ ฅ ๋ฌธ์์ด์์ 2๋ 4๋ฒ, 1์ 3๋ฒ, 3์ 2๋ฒ, 4๋ 1๋ฒ ๋ํ๋๋ค.
์ฆ, ์ ๋ ฅ ๋ฌธ์์ด์ ์ฐจ๋ก๋๋ก vector ์ ๋ฐ์๋ค์ธ ๋ค์, ์ค๋ณต์ ์ ๊ฑฐํ๊ฑฐ ๊ฐ๊ฐ์ ์ซ์๊ฐ ๋์จ ํ์๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌํ๋ฉด ํํ์ด ๋๋ ๊ฒ์ด๋ค.
[C++]
#include <string>
#include <vector>
#include <sstream>
#include <algorithm>
using namespace std;
vector<int> solution(string s) {
vector<int> answer;
int count[100000+1] = {0};
for(int i = 0 ; i < s.size(); i ++)
{
if(s[i] == '{' || s[i] == '}') s[i] = ' ';
if(s[i] == ',')
s[i] = ' ';
}
istringstream ss;
ss.str(s);
string buf = "";
while(ss >> buf)
{
answer.push_back(stoi(buf));
count[stoi(buf)]++;
}
sort(answer.begin(), answer.end());
answer.erase(unique(answer.begin(), answer.end()), answer.end());
sort(answer.begin(), answer.end(), [&](int a, int b)
{
return count[a] > count[b];
});
return answer;
}
'๐ฅ Algorithm || ๋ฌธ์ ํ์ด > PS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ๊ธฐ๋ฅ๊ฐ๋ฐ (0) | 2022.07.12 |
---|---|
[2017 ํ์คํ์ด] ์ง์ง์ด ์ ๊ฑฐํ๊ธฐ (0) | 2022.07.11 |
[ํ๋ก๊ทธ๋๋จธ์ค] ๋ ๋งต๊ฒ (0) | 2022.07.11 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์ ํ๋ฒํธ ๋ชฉ๋ก (0) | 2022.07.08 |
[2020 KAKAO BLIND RECRUITMENT] ๊ดํธ ๋ณํ (0) | 2022.07.08 |