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 |
Tags
- for..of
- Array.from()
- display : none
- 객체
- invalid assignment left-hand side
- Sort
- map()
- nth-child()
- filter()
- Em
- Link
- 일반 형제 선택자 결합
- 백준알고리즘
- 양방향 연결리스트
- visibility : hidden
- indexOf
- 배열의 오름차순
- 쌍방향 연결리스트
- 단방향 연결리스트
- 배열의 내림차순
- 배열과 연결리스트의 차이
- 인접 형제 선택자 결합
- 가상 요소 선택자
- CSS
- 범용 선택자
- disabled
- classList.contains(string)
- 등차수열의 항 찾기
- 고차함수
- innerhtml
Archives
- Today
- Total
프론트엔드 센트럴파크 (☞゚ヮ゚)☞
반복문(for)을 이용하여 배열 안의 숫자 비교 본문
1. 반복문을 배열 길이만큼 돌린다.
2. 배열의 index값이 1부터 시작하게 한다.
3. 배열 안의 수들을 비교하여 제일 큰 값의 index를 출력
오답(답도 안맞음)
function answer(employee) {
let employee_id;
for(let i = 1; i < employee.length; i++) {
if(employee[i] > employee[i+1]) {
return employee[i];
}else if(employee[i] < employee[i+1]){
return employee[i+1];
}
}
return employee_id;
};
let input = [[3,7,9,6,1], [2,7,1,4,3,0,5], [7,5,0,1,2,12,6]];
for(let i = 0; i < input.length; i++) {
console.log(`#${ i + 1 } ${answer(input[i])}`);
}
생각은 얼추 비슷하게 했다.
하지만 두 수를 비교해서 넣을 큰 값의 변수를 생각하지 못했기 때문에 오답이 나왔나 싶다.
정답
function answer(employee) {
let employee_id;
let max = 0;
for(let i = 0; i < employee.length; i++) {
if(employee[i] > max) {
max = employee[i];
employee_id = i + 1;
}
}
return employee_id;
};
let input = [[3,7,9,6,1], [2,7,1,4,3,0,5], [7,5,0,1,2,12,6]];
for(let i = 0; i < input.length; i++) {
console.log(`#${ i + 1 } ${answer(input[i])}`);
}
핵심은 let max로 두 수를 비교하여 큰 수를 담아놓을 변수를 만드는 것이다.
employee_id = i + 1; 는 배열이 1부터 시작하길 원하기 때문이다.
'Algorism' 카테고리의 다른 글
반복문을 이용하여 무한 뺄셈 하기 (0) | 2022.07.03 |
---|---|
백준알고리즘 node.js 입력방법 - vscode 사용 (0) | 2022.06.18 |
반복문(for)으로 반올림하여 반 평균 구하기 (0) | 2022.06.12 |
반복문(for) - 배열안의 숫자만큼 별 갯수 출력하기 (0) | 2022.06.06 |
반복문을 통하여 짝수 구하기 (0) | 2022.05.06 |
Comments