반응형
하...
버블sort를 몰랐다.
시간복잡도 big-O도 코드가 긴거 대비 O(n^2).....
코딩테스트를 미리미리 준비해야 하는 이유다.
#include <stdio.h>
#include <string.h>
int main(void)
{
int nInputArray[1000], nTemp[1000];
int nIter, nInput;
scanf("%d\n", &nIter);
for(int i = 0; i < nIter; i++)
{
scanf("%d\n", &nInput);
if(i == 0)
{
nInputArray[0] = nInput;
}
else
{
if(nInputArray[0] > nInput)
{
memcpy(&nTemp[0], &nInputArray[0], sizeof(int)*i);
memcpy(&nInputArray[0] + 1, &nTemp[0], sizeof(int)*i);
nInputArray[0] = nInput;
}
else if(nInputArray[i-1] < nInput)
{
nInputArray[i] = nInput;
}
else // 중간에 껴있는 번호
{
for(int j = 0; j < i; j++)
{
if(nInputArray[j] < nInput && nInputArray[j+1] > nInput)
{
memcpy(&nTemp[0], &nInputArray[0] + j + 1, sizeof(int)*(i-j));
memcpy(&nInputArray[0] + j+2, &nTemp[0], sizeof(int)*(i-j));
nInputArray[j+1] = nInput;
}
}
}
}
}
for(int k = 0; k < nIter; k++)
{
printf("%d\n", nInputArray[k]);
}
return 0;
}
반응형
'알고 있으면 유용한 것들' 카테고리의 다른 글
스타벅스 커피는 먹기 싫은데 기프티콘이 있다면? "팔라고"로 돈 벌어보세요. (Feat. 마이데이터 이벤트) (1) | 2022.02.07 |
---|---|
새아파트 입주전 기본시공 2일안에 끝내는 스케쥴 (0) | 2022.02.07 |
c언어 11년차 개발자, scanf도 제대로 쓸 줄 모르는 바보ㅠㅠ (백준 10818번 코드) (0) | 2022.02.05 |
이직할때 이용할 코딩 테스트 사이트 모음 Ver 0.82 (0) | 2022.02.04 |
카페 1회용 컵 보증금제도 내용 요약정리 - 카페 컵으로 돈버는 방법 (1) | 2022.01.26 |