📌 문제 링크
https://www.acmicpc.net/problem/10818
📌 문제 탐색하기
- N개의 정수가 주어질 때 최솟값과 최댓값을 구해라
시간복잡도
- O(n)
📌 코드 설계하기
- 문제의 `input`을 개행으로 분리합니다.
- `input`의 1번째 자리를 `slice()`하여 띄어쓰기로 분리한 후 숫자로 변환하고 그 배열을 `flat()`으로 평탄화합니다.
- 배열 중 가장 작은 값과 가장 큰 값을 출력 형식에 맞게 출력합니다.
📌 정답 코드
//https://www.acmicpc.net/problem/10818
export {};
const fs = require("fs");
const filePath =
process.platform === "linux" ? "/dev/stdin" : __dirname + "/input.txt";
const input = fs.readFileSync(filePath).toString().trim().split("\n");
const arr = input
.slice(1)
.map((x: string) => x.split(" ").map(Number))
.flat();
console.log(Math.min(...arr) + " " + Math.max(...arr));
'코딩 > 알고리즘' 카테고리의 다른 글
백준) 10988 - 팰린드롬인지 확인하기 JS (0) | 2024.11.10 |
---|---|
백준) 2738 - 행렬 덧셈 JS (1) | 2024.11.09 |
백준) 8393 - 합 JS (0) | 2024.11.07 |
백준) 25304 - 영수증 JS (1) | 2024.11.06 |
백준) 15552 - 빠른 A+B JS (0) | 2024.11.05 |