문제)
결과로 숫자가 나오는 이유는
if문 조건문이 항상 불리언타입을 반환한다는 것과 그래서 if문의 조건문을 적으면
그게 true일 때의 결과가 반환된다
[i]와 [j]에는 true일 때 인덱스 번호가 나온다는 것
map[2][0] 의 결과는 1이니까 true다
거기에 1을 +(플러스) 하면 위치를 가르키는 숫자가 나온다
정답보기
function solution(map) {
for (let 방 = 0; 방 < map.length; 방++) {
for (let 자리 = 0; 자리 < map[방].length; 자리++) {
if (map[방][자리]) {
// index는 0부터 시작하므로 결과에 1을 더합니다.
return `선배님은 ${방 + 1}번째 방, ${자리 + 1}번째 자리에 있습니다.`;
}
}
}
return "선배님을 찾을 수가 없습니다.";
}
solution([[0, 0], [0], [0, 1, 0], [0, 0]]);
// “선배님은 3번째 방, 2번 자리에 있습니다.”
solution([[0], [0, 0], [0], [0, 0], [0, 0]]);
// “선배님을 찾을 수가 없습니다.”
'알고리즘' 카테고리의 다른 글
문자열 관련 메소드 toLowerCase, toUpperCase (0) | 2024.11.03 |
---|---|
문자열 관련 메소드 split, join (0) | 2024.11.03 |
반복문 filter (0) | 2024.11.03 |
반복문 map (0) | 2024.11.03 |
반복문 이중 for문 (0) | 2024.11.03 |