본문 바로가기
이론/코딩테스트

[백준] 11399번 ATM (삽입정렬)

by 퇴근후개발 2022. 7. 31.
반응형

-문제

리스트 최대 크기 : 1,000

시간의 합의 최솟값을 구하려면 오름차순으로 정렬하면 된다. 

데이터 크기가 작은 편이라 삽입정렬을 사용했다.

 

-코드

#include<stdio.h>
#include<vector>
using namespace std;

int main()
{
	int n, j, tmp, res=0;
	scanf("%d", &n);
	vector<int> a(n);
	for (int i = 0; i < n; i++)
	{
		scanf("%d", &a[i]);
	}

	for (int i = 1; i < n; i++)
	{
		tmp = a[i];
		for (j = i-1; j>= 0; j--)
		{
			if (a[j] > tmp) a[j + 1] = a[j];
			else break;
		}
		a[j + 1] = tmp;
	}

	for (int i = 0; i < n; i++)
	{
		res += a[i] * (n - i);
	}
	printf("%d", res);
	return 0;
}
반응형