백준 1931 회의실배정
- C
- 2020. 11. 30.
백준 1931 회의실배정.
백준 1931번 "회의실배정" 문제의 자세한 내용은 글 하단의 문제 링크를 참고하세요.
코드
백준 11399번 "ATM" 문제의 코드입니다.
1. 메모리 3564kb, 36ms.
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
struct mt{
int start,end;
};
bool compare(const mt &t1,const mt &t2) {
if (t1.end != t2.end)
return t1.end < t2.end;
else
return t1.start < t2.start;
}
int main(){
int n,i,count=0,endc=0;
cin>>n;
vector<mt> meeting_v;
mt temp;
for(i=0;i<n;i++){
int start,end;
scanf("%d %d",&start,&end);
temp.start = start, temp.end = end;
meeting_v.push_back(temp);
}
sort(meeting_v.begin(), meeting_v.end(), compare);
for(i=0;i<n;i++){
if(endc<=meeting_v[i].start){
endc=meeting_v[i].end;
count++;
}
}
cout<<count<<endl;
return 0;
}
2. 메모리 2800kb, 84ms.
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
struct mt{
int start,end;
};
bool compare(const mt &t1,const mt &t2) {
if (t1.end != t2.end)
return t1.end < t2.end;
else
return t1.start < t2.start;
}
int main(){
int n,i,count=0,endc=0;
cin>>n;
vector<mt> meeting_v(n);
mt temp;
for(i=0;i<n;i++){
cin>>meeting_v[i].start>>meeting_v[i].end;
}
sort(meeting_v.begin(), meeting_v.end(), compare);
for(i=0;i<n;i++){
if(endc<=meeting_v[i].start){
endc=meeting_v[i].end;
count++;
}
}
cout<<count<<endl;
return 0;
}
실행
위의 코드를 예제의 입력을 넣어 실행했을 때의 결과입니다.
'C' 카테고리의 다른 글
백준 2908 상수 C++ (0) | 2023.03.27 |
---|---|
백준 1152 단어의 개수 C++ (0) | 2023.03.27 |
백준 11047 동전 0 (0) | 2020.09.05 |
백준 11399 ATM (0) | 2020.09.04 |
백준 4344 평균은 넘겠지 (0) | 2020.05.09 |