#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)
조회 수 856 추천 수 0 댓글 0