36번 문제
내가 풀이한 답
앞에서
#include <stdio.h>
#include <stdlib.h>
int main() {
freopen("input.txt", "rt", stdin);
int n, i, j, key, temp;
scanf("%d", &n);
int *arr = (int *)malloc(sizeof(int) * n);
for(i=0; i<n; i++){
scanf("%d", &arr[i]);
}
for(i=1; i<n; i++){
key = i;
for(j=i-1; j>=0; j--){
if(arr[key] < arr[j]){
temp = arr[key];
arr[key] = arr[j];
arr[j] = temp;
key--;
}
}
}
for(i=0; i<n; i++){
printf("%d ", arr[i]);
}
free(arr);
return 0;
}
결과는 통과하였다.
사이트의 답안
#include<stdio.h>
#include<vector>
#include<algorithm>
using namespace std;
int main(){
freopen("input.txt", "rt", stdin);
int a[100], n, tmp, i, j;
scanf("%d", &n);
for(i=0; i<n; i++){
scanf("%d", &a[i]);
}
for(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(i=0; i<n; i++){
printf("%d ", a[i]);
}
return 0;
}
'알고리즘 & 자료구조 > 정렬' 카테고리의 다른 글
37. Least Recently Used(카카오 캐시 문제 변형) (0) | 2020.09.12 |
---|---|
35. Special Sort(구글 인터뷰) (0) | 2020.09.11 |
34. 버블정렬 (0) | 2020.09.11 |
33. 3등의 성적은? (0) | 2020.09.11 |
32. 선택정렬 (0) | 2020.09.11 |