[테스트]2

jableee·2022년 1월 20일
0
function solution(arr1, arr2){
	let answer=0;

  //하루 공부시간 구하기
  var time = [
    [0,0]
  ]
  var hour = []
  var minute = []

  var allhour = 0
  var allminute = 0
  
  for(let i=0; i<arr1.length; i++){
    //시간과 분으로 각각 2차원 배열로 만들어준다
    arr1[i] = arr1[i].split(':')
    arr2[i] = arr2[i].split(':')
    //각각의 체크인 체크아웃 배열을 문자값을 정수값으로 반환한다.
    for(let j=0; j<arr1[i].length; j++){
      arr1[i][j] = Number(arr1[i][j])
      arr2[i][j] = Number(arr2[i][j])
    }
    //체크아웃 조건에 맞게 5시가넘은경우 21시로 맞춰주는 식
    if(arr2[i][0] >= 29){
      arr2[i][0] = 21
      arr2[i][1] = 00
    }
    //체크아웃 시간에서 체크인 시간을 빼주는 
    hour.push(arr2[i][0]-arr1[i][0])
    minute.push(arr2[i][1]-arr1[i][1])
  }
  // -인 분값 시간 빼서 +로 만들어주기
  for(let i=0; i<hour.length; i++){
    if(minute[i] < 0){
      hour[i] = hour[i] - 1
      minute[i] = minute[i] + 60
    }
  }
  // 총 합 구하기
  for(let i=0; i<hour.length; i++){
    allhour += hour[i]
    allminute += minute[i]
  }
  //분이 60분이 넘었을때 시간으로 넘겨주며 계산하기
  if(allminute > 60){
    allhour += parseInt(allminute/60)
    allminute = allminute%60
  }
  console.log('hour'+allhour)
  console.log('minute' + allminute)

	return answer = allhour + '시간' + allminute + '분';
}
let arr1=["8:42", "9:00", "8:50", "8:47", "9:01", "8:51", "8:59"];
let arr2=["21:42", "23:10", "25:30", "29:10", "23:11", "26:44", "29:26"];
console.log(solution(arr1, arr2))
profile
개발 공부

0개의 댓글