반응형
문제 출처
https://school.programmers.co.kr/learn/courses/30/lessons/340213
정답 풀이
단순 구현 문제이고, commands 반복문이 끝난 시간에도 오프닝 구간인지 확인해주는 것 정도만 신경써주면 된다.
정답 코드
function solution(video_len, pos, op_start, op_end, commands) {
pos = transTime(pos)
video_len = transTime(video_len)
op_start = transTime(op_start)
op_end = transTime(op_end)
for(let command of commands){
pos = opening(pos, op_start, op_end)
if(command === "next"){
pos = next(pos, video_len)
}
else {
pos = prev(pos)
}
}
pos = opening(pos, op_start, op_end)
return output(pos)
function next(time,video_len){
time += 10
if(time > video_len) return video_len
else return time
}
function prev(time){
time -= 10
if(time < 0) return 0
else return time
}
function opening(time, op_start, op_end){
if(time >= op_start && time <= op_end) return op_end
else return time
}
function transTime(str){
let [mm,ss] = str.split(":");
let amount = mm*60 + ss*1
return amount
}
function output(time){
let mm = parseInt(time/60)
let ss = time%60
mm = String(mm).padStart(2,0)
ss = String(ss).padStart(2,0)
return `${mm}:${ss}`
}
}
//commands 반복문으로 명령어에 따라 함수 이동
//next 함수
//prev 함수
//오프닝 구간인지 확인하는 함수
//초로 다 변환하는 함수
//마지막에 다시 맞는 형식으로 출력하는 함수
반응형
'알고리즘 문제 풀기' 카테고리의 다른 글
백준 1167: 트리의 지름 - javascript(dfs) (1) | 2024.09.13 |
---|---|
프로그래머스: [PCCP 기출문제] 2번 퍼즐 게임 챌린지- javascript(이진탐색) (0) | 2024.09.12 |
프로그래머스: [PCCP 기출 문제] 석유 시추 - javascript(bfs 효율성) (0) | 2024.09.11 |
백준 14725: 개미굴 - javascript(문자열, 트리) (0) | 2024.09.09 |
백준 2293: 동전 1 - javascript(dp) (1) | 2024.09.05 |