일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 부스트코스
- 2018 KAKAO BLIND RECRUITMENT
- 2020 KAKAO BLIND RECRUITMENT
- 삼성 SW 역량테스트
- Baekjoon
- 비트마스크
- 카카오 공채
- 알고리즘
- gcp
- set
- 자바
- bfs
- dfs
- gradle
- CS 스터디
- 2020 카카오 공채
- 2019 카카오 공채
- 2019 카카오 개발자 겨울 인턴십 코딩테스트
- Java
- 2018 KAKAO BLIND RECRUITMENT 1차
- 2018 카카오 공채
- 카카오
- 백준
- 2019 KAKAO BLIND RECRUITMENT
- 2018 카카오
- 프로그래머스
- map
- 젠킨스
- 삼성 SW 기출문제
- c++
Archives
- Today
- Total
아무코딩
[2019 카카오 개발자 겨울 인턴십 코딩테스트] 문제4. 호텔 방 배정 본문
문제풀이
실제 모의 코테를 칠 때 알고리즘 2 수업시간에 한번 다뤘던 스케쥴링이 생각났다.
스케쥴링 문제는 UnionFind를 활용한 문제였는데 Collapsing Find는 그대로 사용했지만 Weighted Union 말고 바로 다음 방을 골라야 되기 때문에 사용하지 않았다.
Collapsing Find에서는 부모를 찾고 부모를 맵핑시켜주는 것이 가장 중요하다.
이를 이용하면 그저 간단하게 문제를 풀 수 있다.
효율성 문제인 거 같아서 쫄았지만 생각보다 앞 문제보다도 간단하게 풀었던 것 같다.
소스코드
더보기
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 <string>
#include <vector>
#include <map>
#include <iostream>
using namespace std;
map<long long, long long> mapper;
vector<long long> result;
long long wu[200001];
long long col_find(long long num) {
//없을때
long long pos;
for (long long i = num; i != pos;) {
long long t = mapper[i];
mapper[i] = pos;
i = t;
}
return pos;
}
vector<long long> solution(long long k, vector<long long> room_number) {
for (long long i = 0; i < room_number.size(); i++) {
long long pos = col_find(room_number[i]);
result.push_back(pos);
mapper[pos] = pos+1;
}
return result;
}
int main() {
vector<long long> result = solution(10, { 1,3,4,1,3,1 });
for (int i = 0; i < result.size(); i++) {
cout << result[i] << endl;
}
}
|
문제링크 : https://programmers.co.kr/learn/courses/30/lessons/64063
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
'알고리즘 > 프로그래머스' 카테고리의 다른 글
[프로그래머스 level2] 조이스틱 (0) | 2020.04.04 |
---|---|
[2019 카카오 개발자 겨울 인턴십 코딩테스트] 문제5. 징검다리 건너기 (0) | 2020.04.03 |
[2019 카카오 개발자 겨울 인턴십 코딩테스트] 문제3. 불량 사용자 (0) | 2020.04.03 |
[2019 카카오 개발자 겨울 인턴십 코딩테스트] 문제2. 튜플 (0) | 2020.04.03 |
[2019 카카오 개발자 겨울 인턴십 코딩테스트] 문제1. 크레인 인형뽑기 게임 (0) | 2020.04.03 |
Comments