[2752번] 세수정렬3️⃣
by #김도현문제
[문제]
동규는 세수를 하다가 정렬이 하고싶어졌다.
숫자 세 개를 생각한 뒤에, 이를 오름차순으로 정렬하고 싶어 졌다.
숫자 세 개가 주어졌을 때, 가장 작은 수, 그 다음 수, 가장 큰 수를 출력하는 프로그램을 작성하시오.
[입력]
3 1 2
[출력]
1 2 3
[알고리즘 분류]
정렬
풀이
swap을 이용해서 간단하게 세 수를 정렬한다.
더보기
#include <stdio.h>
void swap(int *a, int *b)
{
int temp = *a;
*a = *b;
*b = temp;
}
int main(void)
{
int L[3];
for (int i = 0; i < 3; i++)
scanf("%d", &L[i]);
if (L[0] > L[1])
swap(&L[0], &L[1]);
if (L[1] > L[2])
swap(&L[1], &L[2]);
if (L[0] > L[1])
swap(&L[0], &L[1]);
for (int i = 0; i < 3; i++)
printf("%d ", L[i]);
return 0;
}
여담
세 수를 정렬하는데 많이 사용되는 깔끔한 테크닉이다.
출처
'PS' 카테고리의 다른 글
[2839번] 설탕 배달🧂 (0) | 2020.10.10 |
---|---|
[1003번] 피보나치 함수🔄 (0) | 2020.10.07 |
[9095번] 1, 2, 3 더하기➕ (0) | 2020.09.30 |
블로그의 정보
Doputer
#김도현