Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 코딩테스트
- nuxt
- TypeScript
- NanoHttpd
- 코테
- docker
- 오블완
- nginx
- AWS
- 광고 id
- JavaScript
- 티스토리챌린지
- Jenkins
- React
- python
- react-native
- 백준
- css
- Express
- 개발
- kotlin
- Next
- 파이썬
- Android
- spring boots
- it
- chrome
- EC2
- toml
- 오퍼월
Archives
- Today
- Total
내맘대로 개발일지
[Javascript] 백준 10818 - 최소, 최대 본문
10818번: 최소, 최대
첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.
www.acmicpc.net
나는 아주 한글로 적혀있는 설명문이 제일 어려운 것 같다.

const fs = require('fs');
const input = fs.readFileSync('/dev/stdin').toString().split('\n');
let min, max;
input[1].split(' ').map((v, i) => {
const value = Number(v)
if(i === 0) {
min = value;
max = value;
} else {
if(value < min) {
min = value;
}
if(value > max) {
max = value;
}
}
})
console.log(`${min} ${max}`)
맨 처음에 작성한 코드이다.
- map을 사용해 반복문을 통해 min max 계산 첫번째에 min max 처음값으로 세팅
- 문제는 코드도 길고 가독성이 떨어진다.
해서 가독성을 높이기 위해 reduce 와 Math 를 사용하였다.
const fs = require('fs');
const input = fs.readFileSync('/dev/stdin').toString().split('\n');
const array = input[1].split(' ').map(v => Number(v));
let min = array.reduce((a, b) => Math.min(a, b));
let max = array.reduce((a, b) => Math.max(a, b));
console.log(`${min} ${max}`)
'Javascript' 카테고리의 다른 글
| [Javascript] 백준 3052 - 나머지 (0) | 2024.01.29 |
|---|---|
| [Javascript] 백준 2562 - 최댓값 (0) | 2024.01.29 |
| [Javascript] 백준 9498 - 시험 성적 (1) | 2024.01.25 |
| [Javascript] 백준 2525 - 오븐 시계 (0) | 2024.01.25 |
| [Javascript] 백준 2884 - 알람 시계 (0) | 2024.01.25 |