알고리즘

백준 JS | 2525번 오븐시계

2022. 4. 13. 22:32
목차
  1. 나의 코드 => 오답
  2. 구글 답안
출처: 백준 온라인 저지

https://www.acmicpc.net/problem/2525

 

2525번: 오븐 시계

첫째 줄에 종료되는 시각의 시와 분을 공백을 사이에 두고 출력한다. (단, 시는 0부터 23까지의 정수, 분은 0부터 59까지의 정수이다. 디지털 시계는 23시 59분에서 1분이 지나면 0시 0분이 된다.)

www.acmicpc.net

나의 코드 => 오답

const readline = require('readline');
const rl= readline.createInterface({
  input: process.stdin,
  output: process.stdout,
});

const input = [];

rl.on('line', function(line){
  input.push(line);
}).on('close', function() {
  let hour = input[0].split(' ')[0];
  let min = input[0].split(' ')[1];
  let cook = input[1];
  
  let cookHr = parseInt(cook / 60);
  let cookMin = cook % 60;
  
  let doneHr = hour + cookHr;
  let doneMin = min + cookMin;
  
  if(doneMin >= 60) {
    doneHr = doneHr + parseInt(doneMin / 60);
    doneMin = doneMin % 60;
    if ( doneHr >= 24) {
      doneHr = doneHr - 24;
    }
  }
  
  console.log(doneHr, doneMin);
});

위의 코드를 이렇게 저렇게 바꿔가며 제출해보아도 계속 오답이 나온다. 

무엇인 무언인지 해결하기 위해 아래와 같은 소스코드에 문제에시 제시된 예시는 물론 내가 임의로 숫자를 주고 테스트를 해보면 값이 정상적으로 출력이 된다.

 

구글 답안

아무리 해결해봐도 정답을 찾을 수 없어 구글에서 답안을 참조하였다.

const readline = require("readline")

const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout,
})

const input = []

rl.on("line", function(line) {
    input.push(line)
}).on("close", function() {
    // [[14 30], 20]
    
    let hour = input[0].split(' ')[0]
    let minute = input[0].split(' ')[1]
    let cookTime = input[1]

    solution(+hour, +minute, +cookTime)
    
    function solution(doneHour, doneMin, cookTime) {
        doneMin += cookTime

        while(doneMin >= 60) {
            doneMin -= 60
            doneHour += 1
        }

        doneHour %= 24;
        console.log(doneHour, doneMin)
    }
})

'알고리즘' 카테고리의 다른 글

백준 온라인저지 100% 활용하기 ( vscode에서 nodejs 디버깅 모드 사용)  (1) 2022.05.02
백준 JS | 1110번 더하기 사이클  (0) 2022.04.26
Algorithm | String형 인자에서 중복되지 않는 가장 긴 단어의 길이 반환하기-CodeKata3  (0) 2022.01.18
Algorithm | Brackets 유효성 로직 구현  (0) 2022.01.17
알고리즘 | 더 해서 특정 수 나오는 배열 요소 찾기 (codeKata day1)  (0) 2022.01.11
  1. 나의 코드 => 오답
  2. 구글 답안
'알고리즘' 카테고리의 다른 글
  • 백준 온라인저지 100% 활용하기 ( vscode에서 nodejs 디버깅 모드 사용)
  • 백준 JS | 1110번 더하기 사이클
  • Algorithm | String형 인자에서 중복되지 않는 가장 긴 단어의 길이 반환하기-CodeKata3
  • Algorithm | Brackets 유효성 로직 구현
3jun
3jun
3jun3jun 님의 블로그입니다.
3jun
3jun
3jun
전체
오늘
어제
  • 분류 전체보기 (94)
    • 프로젝트 (5)
    • Web (9)
    • JavaScript (19)
    • React (12)
    • 알고리즘 (31)
    • Git (3)
    • AWS (3)
    • TypeScript (3)
    • CS (2)
    • Error (6)
    • 회고 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • Promise
  • 백준 온라인저지
  • 백준js
  • 프로그래머스 코딩테스트
  • 유효성 로직
  • state
  • 프로그래머스 js
  • msw 에러
  • react
  • 자바스크립트
  • outer environment
  • 백준 js
  • this.props.history.push
  • 백준 알고리즘
  • 프로그래머스 코딩테스트 js
  • 프로그래머스 코테
  • JavaScript
  • msw
  • 백준 코테
  • airbnb style guide

최근 댓글

최근 글

hELLO · Designed By 정상우.
3jun
백준 JS | 2525번 오븐시계
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.