정렬
동규는 세수를 하다가 정렬이 하고싶어졌다.
숫자 세 개를 생각한 뒤에, 이를 오름차순으로 정렬하고 싶어 졌다.
숫자 세 개가 주어졌을 때, 가장 작은 수, 그 다음 수, 가장 큰 수를 출력하는 프로그램을 작성하시오.
입력
숫자 세 개가 주어진다. 이 숫자는 1보다 크거나 같고, 1,000,000보다 작거나 같다. 이 숫자는 모두 다르다.
출력
제일 작은 수, 그 다음 수, 제일 큰 수를 차례대로 출력한다.
예제 입력 1
3 1 2
예제 출력 1
1 2 3
2중 for loop를 사용하여 첫 번째 원소와 다음 원소를 각각 비교한다. 만약, 다음 원소가 현재 원소보다 작다면, 현재 원소와 다음 원소의 자리를 바꾼다.
모든 원소를 다 비교했다면 정렬된 배열을 return 한다.
Solution()에서 배열의 원소들을 합친 뒤, console에 출력한다.
// 입력 모듈 "fs" 불러오기
const fs = require("fs");
const input = fs
.readFileSync("./dev/stdin")
.toString()
.split(" ")
.map((el) => parseInt(el));
// 정렬 함수 구현
function sorting(arr) {
let tmp = 0;
for (let i = 0; i < arr.length; i++)
for (let j = i + 1; j < arr.length; j++) {
if (arr[i] > arr[j]) {
tmp = arr[i];
arr[i] = arr[j];
arr[j] = tmp;
}
}
return arr;
}
// Solution 함수
const Solution = (input) => {
let answer = sorting(input).join(" ");
console.log(answer);
};
// Solution 실행
Solution(input);