TIL

sarahsea·2022년 1월 16일
0

TIL

목록 보기
121/128
post-thumbnail

오늘은

  • 프로그래머스 lv1 카카오) 신고 결과 받기

  • 프로그래머스 lv2 카카오) 주차 요금 계산

function solution(fees, records) {
    const parkingTime = {};
    records.forEach(r => {
        let [time, id, type] = r.split(' ');
        let [h, m] = time.split(':');
        time = (h * 1) * 60 + (m * 1);
        if (!parkingTime[id]) parkingTime[id] = 0;
        if (type === 'IN') parkingTime[id] += (1439 - time);
        if (type === 'OUT') parkingTime[id] -= (1439 - time);
    });
    const answer = [];
    for (let [car, time] of Object.entries(parkingTime)) {
        if (time <= fees[0]) time = fees[1];
        else time = Math.ceil((time - fees[0]) / fees[2]) * fees[3] + fees[1]
        answer.push([car, time]);
    }
    return answer.sort((a, b) => a[0] - b[0]).map(v => v[1]);
}
// 차량번호 오름차순으로 청구요금 담아 배열로 리턴

// 청구요금 구하기
// 기본요금 fee[1] + ( 주차시간 - 기본시간fee[0] ) / fee[2] * fee[3] 

// 기본시간이내 : 기본요금 
// 출차 시간 max = 23:59
// 분 단위는 올림

// 주차시간 구하기 
// records.forEach(r => r.split(' ')
// log 객체에 {차번호: 시간} 저장
// IN 이면 + (24시간(분) - 입차시간)
// OUT이면 -(1430 - 출차시간)
// 24시간 = 1440분 -> 문제조건 23:59 -> 1439분
  • 건식이 페이지네이션 이슈
    • 페이지수가 적을 때 전체 버튼목록 너비 - 안 예쁨, 각 버튼 너비에 따라 총 너비 반영되도록.. 반응형이랑 고려 필요
    • 페이지버튼이 숫자만 클릭영역이라 너무 좁음, div에 클릭하도록! done

내일은

  • 1월 4째 주
  • 알고리즘, 잔디
  • 유어클래스, 강의 개념 정리
profile
생각하는 사람

0개의 댓글