9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오.
예를 들어, 서로 다른 9개의 자연수
3, 29, 38, 12, 57, 74, 40, 85, 61
이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다.
첫째 줄부터 아홉 번째 줄까지 한 줄에 하나의 자연수가 주어진다. 주어지는 자연수는 100 보다 작다.
3
29
38
12
57
74
40
85
61
첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 몇 번째 수인지를 출력한다.
85
8
//https://www.acmicpc.net/problem/2562
const input = require("fs")
.readFileSync("/dev/stdin")
.toString()
.trim()
.split("\n")
.map((v) => +v);
const max = Math.max(...input);
console.log(max);
console.log(input.indexOf(max) + 1);
indexOf
를 사용해보았다. 링크
앞에서 보았던 숏코딩을 참조했고, Math.max
를 활용해 최대 값을 뽑고 그 값을 indexOf
로 활용해 배열 특정 값 위치를 찾았다. 그리고 + 1을 더해주었다.
a=(require('fs').readFileSync('/dev/stdin')+'').split('\n');b=Math.max(...a);console.log(`${b}\n${a.indexOf(b+'')+1}`)
오호 짧은 코딩도 비슷하게 썼구나.