- Today
- Total
- MST
- ๋ฐฑ์๋
- PS
- ๋ฐฑ์ค
- ํ๋ก๊ทธ๋๋จธ์ค
- spring
- ๋ฌธ๋ฒ
- OOP
- ๊ทธ๋ฆฌ๋
- Algorithm
- tree
- dp
- CS
- ๋ฐ์ดํฐ๋ฒ ์ด์ค
- Graph
- ์๋ฐ์์ ์
- ๋ค์ต์คํธ๋ผ
- ์๋ฃ๊ตฌ์กฐ
- array
- java
- ์กธ์ ์ํ
- ์์์ ๋ ฌ
- leetcode
- ์๋ฐ
- ์ธํด
- ๊ตฌํ
- ๋ฒจ๋งํฌ๋
- BFS
- pytorch
- database
Partially Committed
[ํ๋ก๊ทธ๋๋จธ์ค] ์์ฅ ๋ณธ๋ฌธ
https://school.programmers.co.kr/learn/courses/30/lessons/42578
์ท์ ์ข ๋ฅ์ ์ด๋ฆ์ด pair ๋ก ๋ด๊ธด clothes ๋ฐฐ์ด์ด ์ธํ์ผ๋ก ๋ค์ด์ค๋ฉด, ์ผ๋ง๋ ๋ง์ ์์ ์ท์ ์ ์ ์ ์๋ ์ง ๊ฒฝ์ฐ์ ์๋ฅผ ๋ฆฌํดํด์ผ ํ๋ค. ๋น์ฐํ์ง๋ง ๋์ผ ์ข ๋ฅ์ ์ท์ ํ๋๋ง ์ ํ์ด ๊ฐ๋ฅํ๋ค.
์๋ฅผ ๋ค์ด, [["yellow_hat", "headgear"], ["blue_sunglasses", "eyewear"], ["green_turban", "headgear"]] ์ ๊ฐ์ด ์ ๋ ฅ์ด ๋ค์ด์๋ค๊ณ ์๊ฐํด๋ณด๋ฉด, headgear 2๊ฐ, eyewear 1๊ฐ๊ฐ ๋ค์ด์จ ๊ฒ์ด๋ค. ์ด๋ฅผ ์ด์ฉํด์ ์ฐฉ์ฉ์ ํ ์ ์๋ ๊ฒฝ์ฐ์ ์๋ (2+1)(1+1) - 1 = 6 - 1 = 5 ์ ๊ฐ๋ค.
headgear ๋ ์ด 2๊ฐ ๊ฐ์ง๊ณ ์๋๋ฐ, ํ๋๋ ์ ํํ์ง ์์ ์๋ ์์ผ๋ฏ๋ก headgear ์ ์ ํํ ์ ์๋ ๊ฒฝ์ฐ์ ์๋ 2+1 = 3 ๊ฐ์ธ ๊ฒ์ด๊ณ ,
๋ง์ฐฌ๊ฐ์ง๋ก eyewear ๋ ์ด 1๊ฐ๋ฅผ ๊ฐ์ง๊ณ ์๋๋ฐ ํ๋๋ ์ ํํ์ง ์์ ์๋ ์์ผ๋ฏ๋ก eyewear ๋ฅผ ์ ํํ ์ ์๋ ๊ฒฝ์ฐ์ ์๋ 1+1 = 2 ์ธ ๊ฒ์ด๋ค.
๊ทธ๋์ [["yellow_hat", "headgear"], ["blue_sunglasses", "eyewear"], ["green_turban", "headgear"]] ์ ๊ฐ์ด ์ ๋ ฅ์ด ๋ค์ด์จ ๊ฒฝ์ฐ์๋ 2*3 = 6 ์ ๊ฒฝ์ฐ์ ์๋ฅผ ๊ฐ์ง๋๋ฐ, ์ด ๊ฒฝ์ฐ์ ์๋ ๋จ ํ๋๋ ์ฐฉ์ฉํ์ง ์์ ์ํฉ ๋ํ ํฌํจ๋์ด ์๋ ๊ฒ์ด๋ฏ๋ก 1 ์ ๋นผ์ฃผ์ด์ผ ํ๋ค.
์ด๋ฅผ ์ผ๋ฐํ ํ๋ฉด ํด๋น ๋ฌธ์ ์ ๋ต์์ (a+1)(b+1)(c+1)...(z+1) - 1 ๊ณผ ๊ฐ๋ค. (a, b, c, ... , z ๋ ๊ฐ๊ฐ์ ์ท ์ข ๋ฅ์ ๋ํ ๊ฐ์ง๊ณ ์๋ ์ท์ ๊ฐ์๋ฅผ ์๋ฏธํ๋ค.)
์ฌํผ ์ ๋ฐฉ๋ฒ์ ์ด์ฉํ๋ ค๋ฉด ๊ฐ๊ฐ์ ์ข ๋ฅ์ ๋ํด ๊ฐ์ง๊ณ ์๋ ์ท์ ๊ฐ์๋ฅผ ์์๋ด์ผํ๋ค. ์ด๋ฅผ ์ํด์ <์ท์ ์ข ๋ฅ, ๊ฐ์> ๋ฅผ pair ๋ก ๊ฐ์ง๋ map ์ธ closet ์ ์ ์ธํ์๋ค. ๊ทธ๋ฆฌ๊ณ clothes ๋ฅผ ์ํํ๋ฉฐ ํด๋นํ๋ ์ท ์ข ๋ฅ์ ๋ํ ๊ฐ์๋ฅผ ์นด์ดํ ํ์๊ณ , closet ์ ์ํํ๋ฉฐ ์ ๊ณต์์ ์ด์ฉํด์ ์ต์ข ๋ต์์ ๋์ถํ๋ค.
[C++]
#include <string>
#include <vector>
#include <map>
#include <set>
#include <iostream>
#include <algorithm>
using namespace std;
int solution(vector<vector<string>> clothes) {
int answer = 1;
map<string, int> closet;
for(int i = 0 ; i < clothes.size(); i ++)
{
closet[clothes[i][1]]++;
}
for(auto& ele : closet){
answer *= (ele.second+1);
}
answer = answer - 1;
return answer;
}
'๐ฅ Algorithm || ๋ฌธ์ ํ์ด > PS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ํฐ ์ ๋ง๋ค๊ธฐ (0) | 2022.07.14 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] ๊ฒ์ ๋งต ์ต๋จ๊ฑฐ๋ฆฌ (0) | 2022.07.14 |
[ํ๋ก๊ทธ๋๋จธ์ค] ์์์ฐพ๊ธฐ (0) | 2022.07.13 |
[ํ๋ก๊ทธ๋๋จธ์ค] ๊ฐ์ฅ ํฐ ์ (0) | 2022.07.13 |
[ํ๋ก๊ทธ๋๋จธ์ค] ๊ธฐ๋ฅ๊ฐ๋ฐ (0) | 2022.07.12 |