늒네 기록

[BOJ-JS] 28113번 - 정보섬의 대중교통 본문

알골 공부 기록/BOJ

[BOJ-JS] 28113번 - 정보섬의 대중교통

jaeha lee 2024. 3. 21. 00:34

28113번: 정보섬의 대중교통 (acmicpc.net)

 

28113번: 정보섬의 대중교통

버스에 더 먼저 탑승할 수 있으면 Bus, 지하철에 더 먼저 탑승할 수 있으면 Subway, 버스와 지하철에 탑승하게 되는 시간이 동일하면 Anything을 출력한다.

www.acmicpc.net

문제 자체는 어렵지 않다. 지하철을 타러 가다가 지하철이 출발하면 어떡하지- 하는 걱정을 할 수도 있지만, 문제 조건상 그럴 일은 없다는 것을 알 수 있으며, 이렇게 되면 단순히 두 숫자를 비교하는 문제로 바뀐다.

 

숏코딩을 노려보자!

  • 두 숫자만 받으면 된다.
  • 삼항연산자를 잘 활용해보자.

삼항연산자 문서에 아래와 같은 내용이 있다.

조건 (삼항) 연산자 - JavaScript | MDN (mozilla.org)

 

조건 (삼항) 연산자 - JavaScript | MDN

조건 (삼항) 연산자는 JavaScript에서 세 개의 피연산자를 받는 유일한 연산자입니다. 앞에서부터 조건문, 물음표(?), 조건문이 참(truthy)일 경우 실행할 표현식, 콜론(:), 조건문이 거짓(falsy)일 경우

developer.mozilla.org

조건 연산자는 아래와 같이 연결해 사용할 수 있습니다. 이는 연결된 if … else if … else if … else 와 유사합니다.
function example(…) {
    return condition1 ? value1
         : condition2 ? value2
         : condition3 ? value3
         : value4;
}

 

이를 문제에 잘 활용하면 아래와 같이 줄일 수 있다.

[,b,c]=(0+require('fs').readFileSync(0)).split` `
console.log(b-c<0?'Bus':c-b?'Subway':'Anything')
반응형

'알골 공부 기록 > BOJ' 카테고리의 다른 글

[BOJ-JS] 14264번 - 정육각형과 삼각형  (0) 2024.03.24
[BOJ-JS] 10569번 - 다면체  (0) 2024.03.24
[BOJ-JS] 14245번 - XOR  (0) 2024.03.11
[BOJ-JS] 2556번 - 별 찍기 - 14  (0) 2024.03.10
[BOJ-JS] 1274번 - 커피숍1  (0) 2024.03.09
Comments