[백준/BOJ]14469. 소가 길을 건너간 이유 3 [Silver 5]

  1. 소가 길을 건너간 이유 3

문제 : https://www.acmicpc.net/problem/14469

code

#include <stdio.h>
void BubbleSort(int arrive_time[], int test_time[],int num)
{
	int i, j, temp;
	for (i = num-1; i >0; i--)
		for (j = 0; j < i; j++)
			if (arrive_time[j] > arrive_time[j + 1])
			{
				temp = arrive_time[j];
				arrive_time[j] = arrive_time[j + 1];
				arrive_time[j + 1] = temp;
				temp = test_time[j];
				test_time[j] = test_time[j + 1];
				test_time[j + 1] = temp;
			}
}
main()
{
	int N, i, j, t = 0;
	int arrive[100] = { NULL }, test[100] = { NULL };
	scanf("%d", &N);
	for (i = 0; i < N; i++)
		scanf("%d %d", &arrive[i], &test[i]);
	BubbleSort(arrive,test,N);
	i = 0;
	while(1)
	{
		if (t >= arrive[i])
		{
			t += test[i];
			i++;
		}
		else
			t++;
		if (i == N)
			break;
	}
	printf("%d", t);
	return 0;
}

소가 도착하는시간과 검문받는 시간을 배열로 받고, 정렬(버블,선택,삽입,퀵,힙 등등)을 이용해서 정렬을한다음 for문으로 차례로 검문을 하고 시간을 추가해주면 된다.
오랜만에 정렬을 쓰려니까 헷갈리고 막 잘안되더라
조만간 정렬에 대해서 정리해서 올려야 겠다.

좋은 웹페이지 즐겨찾기