[백준] 11000 강의실 배정
·
백준 문제/그리디
문제: 11000번: 강의실 배정  #include #include #include #include #include #include #include using namespace std;int main() { ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); int n; // 수업의 개수 cin >> n; vector> times; for (int i = 0; i > start >> end; pair tmp = make_pair(start, end); times.push_back(tmp); } // 시작 시점을 기준으로 정렬 sort(times.begin(), times.end()); // 최소힙으로 동작하도록.. priority_queue, g..
[백준] 10216번 Count Circle Groups
·
백준 문제/Disjoints Set
문제: 10216번: Count Circle Groups  #include #include #include #include #include #include #include using namespace std;struct circle { int x; // x 좌표 int y; // y 좌표 int r; // 통신 영역 거리};vector circles;vector circlesSet;// 해당 원이 속한 집합 번호를 반환하는 함수int find_set(int u) { if (circlesSet[u] == u) return u; return circlesSet[u] = find_set(circlesSet[u]);}// 두 개의 원 합치기void union_(int u, int v) { int ur = fi..
[백준] 20040번 사이클 게임
·
백준 문제/Disjoints Set
문제: 20040번: 사이클 게임  #include #include #include #include #include #include #include using namespace std;vector dots;vector sizes;int find_set(int u) { if (dots[u] == u) return u; return dots[u] = find_set(dots[u]);}bool union_(int u, int v) { int ur = find_set(u); int uv = find_set(v); // 다른 집합에 있으면 연결해줘야함 if (ur != uv) { if (sizes[ur] > n >> m; int cnt = 1; dots = vector(n); sizes = vector(n, ..
[진로] 도움 되는 사이트 정리
·
진로
보호되어 있는 글입니다.
[백준] 4195번 친구 네트워크
·
백준 문제/Disjoints Set
문제: 4195번: 친구 네트워크  #include #include #include #include #include #include #include using namespace std;vector sizes;vector frendRelation;int find_set(int u) { if (u == frendRelation[u]) return u; else return frendRelation[u] = find_set(frendRelation[u]);}void union_(int u, int v) { int du = find_set(u); // u 가 속한 집합 번호 가져와 int dv = find_set(v); // v 가 속한 집합 번호 가져와 if (du != dv) { // du 가 더 큰 트..
[백준] 1946번 신입 사원
·
백준 문제/그리디
보호되어 있는 글입니다.
[백준] 12904번 A와 B
·
백준 문제/그리디
보호되어 있는 글입니다.
[백준] 1541번 잃어버린 괄호
·
백준 문제/그리디
보호되어 있는 글입니다.
[백준] 1717번 집합의 표현
·
백준 문제/Disjoints Set
보호되어 있는 글입니다.
그리디 참고 자료
·
백준 문제/그리디
보호되어 있는 글입니다.