문제
내가 푼 방식
<html>
<head>
<meta charset="UTF-8" />
<title>출력결과</title>
</head>
<body>
<script>
function solution(arr) {
let answer = 0,
cnt = 0;
for (let x of arr) {
if (x === 1) {
cnt++;
answer += cnt;
} else cnt = 0;
}
return answer;
}
let arr = [1, 0, 1, 1, 1, 0, 0, 1, 1, 0];
console.log(solution(arr));
</script>
</body>
</html>
다른 풀이
function solution2(input){
let answer = 0;
if(input[0] === 1) answer += 1;
input.reduce((acc, cur) => {
if(cur === 1) {
acc += cur
answer += acc;
}
else acc = 0;
return acc;
})
return answer;
}
✅ reducer
다른 풀이는 reducer를 쓰는 방식이 많았다. 다음 번엔 reducer를 써보자.
'Javascript 코테준비 > 섹션2' 카테고리의 다른 글
6. 격자판 최대합 (0) | 2022.09.27 |
---|---|
5. 등수 구하기 (0) | 2022.09.16 |
3. 가위 바위 보 (1) | 2022.09.12 |
2. 보이는 학생 (0) | 2022.09.12 |
1. 큰 수 출력하기 (0) | 2022.09.12 |