초고교급 희망

[백준][C++]1931번 회의실 배정 본문

Algorithm/Baekjoon

[백준][C++]1931번 회의실 배정

연모링 2023. 11. 20. 16:31
728x90

그리디를 이용한 문제였다.

회의가 끝나는 시간이 빠른 기준으로 정렬한다.

회의가 끝나는 시간이 동일하다면 시작하는 시간이 빠른 기준으로 정렬한다.

 

#include <iostream>
#include <vector>
#include <utility>
#include <algorithm>
using namespace std;

int n;
pair<int, int> conference[100005];

bool func(pair<int, int> a, pair<int, int> b)
{
	if (a.second == b.second)
	{
		return a.first < b.first;
	}
	return a.second < b.second;
}

int main()
{
	cin >> n;

	for (int i = 0; i < n; i++)
	{
		cin >> conference[i].first >> conference[i].second;
	}

	sort(conference, conference + n, func);

	int t = 0;
	int count = 0;
	for (int i = 0; i < n; i++)
	{
		if (t <= conference[i].first)
		{
			t = conference[i].second;
			count++;
		}
	}

	cout << count;
}
728x90

'Algorithm > Baekjoon' 카테고리의 다른 글

[백준][C++]10816번 숫자 카드 2  (1) 2023.11.03
[백준][C++]1920번 수 찾기  (1) 2023.11.01
[백준][C++]3190번 뱀  (0) 2023.06.21
[백준][C++]7490번 0 만들기  (0) 2023.06.05
[백준][C++]14503번 로봇 청소기  (0) 2023.05.24