입력 코드 #include main() { int N; scanf("%d", &N); int arr[1000]; int i, j, key; for (i = 0; i = 0 && arr[j] > arr[j + 1]) { key = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = key; j--; } } int sum = 0, sum2 = 0; for (i = 0; i < N; i++) { sum += arr[i]; sum2 += sum; } printf("%d\n", sum2); } 코드 설명 #그리디 알고리즘 #정렬 앞사람이 걸리는..
입력 코드 #include #include #define MIN -4000 #define MAX 4000 int main(void){ int arr[8001]={0}; int *result={0}; int n=0,num=0,sum=0; int i=0,j=0,k=0; int max=1,index=0,count=0; scanf("%d", &n); result=(int*)malloc(sizeof(int)*n); for(i=0;i
입력 코드 #include #include main() { int N; scanf("%d", &N); int i, j; for (i = 2; i
입력 코드 #include int arr[246913]; int main() { arr[1] = arr[0] = 1; int i, j; for (i = 2; i < 246913; i++) { if(!arr[i]) for (j = i + i; j < 246913; j += i) { arr[j] = 1; } } while (1) { int N, cnt = 0; scanf("%d", &N); if (!N) break; for (i = N + 1; i