#include <stdio.h>
int tem[100][2]={0};
void line(int n); //최저보관온도가 낮은 순으로 정렬
int search(int n);
int main(void)
{
int n, i, result;
scanf(" %d", &n); //화학물질의 수
for(i=0; i<n; i++)
scanf(" %d %d", &tem[i][0], &tem[i][1]); //[0]~[1] 보관 가능 온도
line(n);
result=search(n);
printf("%d", result);
return 0;
}
void line(int n)
{
int i, j, a, tmp;
for(i=0; i<n-1; i++)
{
a=i;
for(j=i+1; j<n; j++)
{
if(tem[a][0]>tem[j][0] || (tem[a][0]==tem[j][0] && tem[a][1]>tem[j][1]))
{
a=j;
}
}
if(a!=i)
{
tmp=tem[i][0];
tem[i][0]=tem[a][0];
tem[a][0]=tmp;
tmp=tem[i][1];
tem[i][1]=tem[a][1];
tem[a][1]=tmp;
}
}
//printf("---------------------------------\n");
/*for(i=0; i<n; i++)
{
printf("%d %d [%d]\n", tem[i][0], tem[i][1], i);
}*/
}
int search(int n)
{
int i, j, cnt=0, min;
for(i=0; i<n;)
{
min=tem[i][1];
for(j=i+1; j<n; j++)
{
if(tem[j][0]>tem[i][1] || tem[j][0]>min)
break;
if(min>tem[j][1])
min=tem[j][1];
}
//printf("i=%d j=%d \n", i, j);
i=j;
cnt++;
}
return cnt;
}
2018.03.03 12:08
정올 - 알고리즘 - 냉장고(1828)
조회 수 884 추천 수 0 댓글 0