알고리즘/백준알고리즘

[백준알고리즘] #13580. Andando no tempo (by JAVA and node.js)

Jimnya 2022. 4. 26. 17:15
728x90
반응형

백준알고리즘

- Bronze 4 -

 #13580. Andando no tempo by JAVA and node.js 

 


 

문제

출처: https://www.acmicpc.net/problem/13580

번역: https://www.acmicpc.net/board/view/85743

 

글 읽기 - (번역) 13580 - 시간 여행

댓글을 작성하려면 로그인해야 합니다.

www.acmicpc.net

 


 

접근 방법

문제를 복사해 구글 번역기에도 돌려보고, 백준 게시판에 있는 번역본도 봤는데 도통 어떤 문제인지 감이 잡히지 않았다.

이해된 내용을 바탕으로 정리를 하자면,

  • 세 개의 수 만큼 미래 혹은 과거로 갈 수 있다.
  • 세 개의 수 중 적어도 한 개는 사용해야한다.
  • 세 개를 모두 사용하지 않아도 된다.
  • 세 개의 수만큼 미래 혹은 과거로 갈 수 있다.
  • 미래 혹은 과거를 다녀오면서 다시 현재로 돌아올 수 있으면 S를, 없으면 N을 출력해라.

 

입력된 세 수 중 두 개가 같거나, 가장 큰 수와 나머지 두 수의 합이 같으면 현재로 돌아올 수 있으므로 이 내용으로 코드를 짜면 된다.


 

풀이

▶ JAVA

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int[] arr = new int[3];
        for (int i = 0; i < arr.length; i++) {
            arr[i] = scan.nextInt();
        }
        scan.close();

        Arrays.sort(arr); // 오름차순으로 정렬
        if (arr[0] == arr[1] || arr[1] == arr[2] || arr[0] + arr[1] == arr[2]) {
            System.out.println("S");
        } else {
            System.out.println("N");
        }
    }
}

 

▶ node.js

var fs = require('fs');
// 입력받아서 정수로 저장하고 오름차순 정렬
var input = fs.readFileSync('/dev/stdin').toString().trim().split(' ').map(v => +v).sort((a,b) => a-b); 

if(input[0] == input[1] || input[1] == input[2] || input[0] + input[1] == input[2]){
    console.log("S");
} else {
    console.log("N");
}

 


 

결과

 


 

 

 

 

 

End.

heisely's 괴발개발 개발일지

 

728x90
반응형