[C언어] 백준 11399 : ATM

mainsain·2022년 3월 29일
0

백준

목록 보기
55/64
post-thumbnail

생각의 흐름

처음에 문제를 보고 줄을 2, 5, 1, 4, 3으로 서야 최솟값이 나온다고 하길래 줄을 어떻게 서야하는지를 물어보는줄 알았다. 근데 그냥 그건 필요없고 최솟값만 나오면 되는 문제이다.
? 뭐지 싶었다 그냥 qsort정렬하면 1 2 3 3 4인데 1, 1+2, 1+2+3, 1+2+3+3, 1+2+3+3+4 이걸 다 더하면 끝인데 싶었다.
이정도만 생각하고 코드를 짰다.

내가 푼 코드

#include <stdio.h>
#include <stdlib.h>

int compare(const void *a, const void *b)
{
	int A = *(int *)a;
	int B = *(int *)b;
	if (A > B)
		return 1;
	if (A < B)
		return -1;
	return 0;
}

int main()
{
	int n, i, j;
	int arr[1001];
	int count = 0;
	scanf("%d", &n);
	i = 0;
	while (i < n)
	{
		scanf("%d", &arr[i]);
		i++;
	}
	qsort(arr, n, sizeof(int), compare);
	i = 0;
	while (i < n)
	{
		j = 0;
		while (j <= i)
		{
			count = count + arr[j];
			j++;
		}
		i++;
	}
	printf("%d", count);
}

다른사람들도 동일하다.

profile
새로운 자극을 주세요.

0개의 댓글