- ์ฌ๋ผ์ด๋ฉ ์๋์ฐ
- ์นด์นด์ค2021
- ํ๋ก๊ทธ๋๋จธ์ค
- go
- Python
- js
- Union-Find
- ์ด๋ถํ์
- C++
- ๋ค์ต์คํธ๋ผ
- ํธ๋ฆฌ
- ์น๋ฆฐ์ด
- LCs
- ๊ฐ์ฅ๊ฐ๊น์ด๊ณตํต์กฐ์
- nestjs
- ๋นํธ๋งต
- ๋นํธ๋ง์คํน
- ํ๋ฆฌ์จ๋ณด๋ฉ
- DFS
- ๋์ ํ๋ก๊ทธ๋๋ฐ
- ์นด์นด์ค ์ฝํ
- ๋ฐฑ์๋ ํ๋ฆฌ์จ๋ณด๋ฉ
- ์ํฐ๋
- ์๊ณ ๋ฆฌ์ฆ
- ๋ฐฑ์ค
- ์ฌ๊ท
- ์์ฝ๋
- golang
- DP
- BFS
- Today
- Total
Hello Ocean! ๐ผ
[ํ๋ก๊ทธ๋๋จธ์ค] ์์ฃผํ์ง ๋ชปํ ์ ์ ๋ณธ๋ฌธ
๋ฌธ์ ์ค๋ช
์๋ง์ ๋ง๋ผํค ์ ์๋ค์ด ๋ง๋ผํค์ ์ฐธ์ฌํ์์ต๋๋ค. ๋จ ํ ๋ช ์ ์ ์๋ฅผ ์ ์ธํ๊ณ ๋ ๋ชจ๋ ์ ์๊ฐ ๋ง๋ผํค์ ์์ฃผํ์์ต๋๋ค.
๋ง๋ผํค์ ์ฐธ์ฌํ ์ ์๋ค์ ์ด๋ฆ์ด ๋ด๊ธด ๋ฐฐ์ด participant์ ์์ฃผํ ์ ์๋ค์ ์ด๋ฆ์ด ๋ด๊ธด ๋ฐฐ์ด completion์ด ์ฃผ์ด์ง ๋, ์์ฃผํ์ง ๋ชปํ ์ ์์ ์ด๋ฆ์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ์ฌํญ
๋ง๋ผํค ๊ฒฝ๊ธฐ์ ์ฐธ์ฌํ ์ ์์ ์๋ 1๋ช
์ด์ 100,000๋ช
์ดํ์
๋๋ค.
completion์ ๊ธธ์ด๋ participant์ ๊ธธ์ด๋ณด๋ค 1 ์์ต๋๋ค.
์ฐธ๊ฐ์์ ์ด๋ฆ์ 1๊ฐ ์ด์ 20๊ฐ ์ดํ์ ์ํ๋ฒณ ์๋ฌธ์๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.
์ฐธ๊ฐ์ ์ค์๋ ๋๋ช
์ด์ธ์ด ์์ ์ ์์ต๋๋ค.
์ ์ถ๋ ฅ ์
participant completion return
[leo, kiki, eden] [eden, kiki] leo
[marina, josipa, nikola, vinko, filipa] [josipa, filipa, marina, nikola] vinko
[mislav, stanko, mislav, ana] [stanko, ana, mislav] mislav
์ ์ถ๋ ฅ ์ ์ค๋ช
์์ #1
leo๋ ์ฐธ์ฌ์ ๋ช
๋จ์๋ ์์ง๋ง, ์์ฃผ์ ๋ช
๋จ์๋ ์๊ธฐ ๋๋ฌธ์ ์์ฃผํ์ง ๋ชปํ์ต๋๋ค.
์์ #2
vinko๋ ์ฐธ์ฌ์ ๋ช
๋จ์๋ ์์ง๋ง, ์์ฃผ์ ๋ช
๋จ์๋ ์๊ธฐ ๋๋ฌธ์ ์์ฃผํ์ง ๋ชปํ์ต๋๋ค.
์์ #3
mislav๋ ์ฐธ์ฌ์ ๋ช
๋จ์๋ ๋ ๋ช
์ด ์์ง๋ง, ์์ฃผ์ ๋ช
๋จ์๋ ํ ๋ช
๋ฐ์ ์๊ธฐ ๋๋ฌธ์ ํ๋ช
์ ์์ฃผํ์ง ๋ชปํ์ต๋๋ค.
ํ์ด
์ฐธ๊ฐ์์ ์์ฃผ์ ๋ฐฐ์ด์ ์ ๋ ฌํ ๋ค,
๋งจ ์์์๋ถํฐ ํ์นธ์ฉ ์๋ก ๋น๊ตํด๋ณธ๋ค.
์ฐธ๊ฐ์๋ชฉ๋ก์ i๋ฒ์งธ ์ฌ๋๊ณผ , ์์ฃผ์๋ชฉ๋ก์ i๋ฒ์งธ ์ฌ๋์ด ๊ฐ์ผ๋ฉด ๋์ด๊ฐ๊ณ ,
์ผ์ชฝ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๋ค๋ฅด๋ค๋ฉด, ์ฐธ๊ฐ์ ๋ชฉ๋ก์ i๋ฒ์งธ ์ฌ๋์ด ์์ฃผํ์ง ๋ชปํ ์ฌ๋์ด๋ฏ๋ก ์ ๋ต์ด ๋๋ค.
๋ฐ๋ฉด์ ์ค๋ฅธ์ชฝ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ์์ฃผ์ ๋ชฉ๋ก์ ๋๊น์ง ๋ณธ ๊ฒฝ์ฐ, ์ฐธ๊ฐ์ ๋ชฉ๋ก์ ๋ง์ง๋ง ์ฌ๋์ด ์์ฃผํ์ง ๋ชปํ ์ฌ๋์ด๋ค.
๋ฌธ์ ์นดํ ๊ณ ๋ฆฌ๊ฐ hash์ฌ์ C++์ hash map์ผ๋ก ํ์ด๋ณด๋ ค๊ณ ํ์ผ๋, ์์ ๊ฐ์ ๋ฐฉ๋ฒ์ด ํจ์ฌ ๊ฐ๋จํ ๊ฒ ๊ฐ์ ์ด๋ ๊ฒ ํ์ดํ์๋ค.
์ฝ๋
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
string solution(vector<string> participant, vector<string> completion) {
string answer = "";
//์ ๋ ฌ
sort(participant.begin(), participant.end());
sort(completion.begin(), completion.end());
for (int i = 0;i < completion.size();i++) {
if (i == completion.size() - 1)
answer = participant[i + 1];
if (participant[i] != completion[i]) {
answer = participant[i];
break;
}
}
return answer;
}
'Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[ํ๋ก๊ทธ๋๋จธ์ค] ์์ฅ (0) | 2020.09.14 |
---|---|
[ํ๋ก๊ทธ๋๋จธ์ค] ์ ๊ตญ ์ฌ์ฌ (0) | 2020.09.07 |
[์๊ณ ๋ฆฌ์ฆ] ์ต๋ ์ต์ ์ฐพ๊ธฐ (ํ ๋๋จผํธ ํธ๋ฆฌ) (0) | 2020.09.07 |
[์๊ณ ๋ฆฌ์ฆ] ํ์ ์๊ณ ๋ฆฌ์ฆ (์ ํ, ์ด๋ถ, ํด์, BST) (0) | 2020.08.31 |
[ํ๋ก๊ทธ๋๋จธ์ค/C++] H-index , K๋ฒ์งธ ์ (0) | 2020.08.31 |