가수면

[Javascript] 몇시간 했더라? 본문

CS/코딩 테스트

[Javascript] 몇시간 했더라?

니비앙 2022. 11. 23. 10:57

지용이는 항해에서 한 주 동안 공부 기록을 남길 알고리즘을 만들어보기로 결심했다. 항해의 체크인 페이지에는 몇가지 조건이 있는데 이를 만족하는 알고리즘을 만들어보자.

  • 체크인과 체크아웃은 항상 정시에 진행한 것으로 가정한다.
  • 체크아웃을 할 때 익일 시간은 24+a 로 계산한다. 즉 새벽 2시는 24+2 인 26으로 표기한다.
  • 체크인 페이지는 체크아웃이 새벽 5시 정각이나 새벽 5시를 넘어가면 체크아웃을 깜빡한 것으로 간주한다. 따라서 새벽 5시가 넘어가 체크아웃을 하게 되면 자동으로 체크아웃을 오후 9시(21시)로 한 것으로 처리한다.

제한 조건

  • 체크인(checkin)과 체크아웃(checkout)을 진행한 시간이 담긴 배열 두 개가 주어진다.
  • 각 배열에는 월요일부터 일요일까지 체크인/아웃을 한 시간이 담겨있다.
  • checkin과 checkout 배열의 길이는 각각 7 이다.

 


내가 쓴 코드

function solution(arr1, arr2){
	let answer=0;
  return answer = arr2.reduce((a, b, i) => {
    if (b > 28) {
      a += 21 - arr1[i]
    } else {
      a += b - arr1[i]
    } return a
}, 0)

}
let arr1=[9, 9, 8, 8, 7, 8, 9];
let arr2=[21, 25, 30, 29, 22, 23, 30]
;
console.log(solution(arr1, arr2))

return 찍어주는 것과 =이 아니라 += 해주는 것 반드시 기억해야 됨

'CS > 코딩 테스트' 카테고리의 다른 글

[Javascript] 3진법 뒤집기  (0) 2022.11.23
[Javascript] 소수의 개수와 덧셈  (0) 2022.11.23
[Javascript] 하샤드 수  (1) 2022.11.23
[Javascript] 콜라츠 추측  (0) 2022.11.23
[Javascript] 제일 작은 수 제거하기  (0) 2022.11.23
Comments