[백준/JAVA] 2712번 미국 스타일

정은아·2024년 5월 15일

[알고리즘] 수학 모음

목록 보기
90/152
post-thumbnail

문제

내 풀이

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main extends Exception {
    public static void main(String[] args) throws IOException {
        // 싸이를 위해(??) 단위를 바꿔주는 프로그램

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();

        int num = Integer.parseInt(br.readLine());

        for (int i = 0; i < num; i++) {
            StringTokenizer st = new StringTokenizer(br.readLine());
            double number = Double.parseDouble(st.nextToken());
            String str = st.nextToken();

            double answerA = 0;
            String answerB = "";
            String chagneAnswer = "";

            if (str.equals("kg")){
                answerB = "lb";
                answerA = number * 2.2046;
                chagneAnswer = String.format("%.4f", answerA);
            }else if(str.equals("l")){
                answerB = "g";
                answerA = number * 0.2642;
                chagneAnswer = String.format("%.4f", answerA);
            } else if ((str.equals("lb"))) {
                answerB = "kg";
                answerA = number * 0.4536;
                chagneAnswer = String.format("%.4f", answerA);
            } else if (str.equals("g")) {
                answerB = "l";
                answerA = number * 3.7854;
                chagneAnswer = String.format("%.4f", answerA);
            }

            sb.append(chagneAnswer).append(" ").append(answerB).append("\n");
        }

        System.out.println(sb.toString());
    }
}

느낀점

소수점 4자리까지 출력하려면 printf를 쓰는게 가장 간편한데,
혹시 몰라서 String을 새로 받아 format()메서드를 사용했다.

profile
꾸준함의 가치를 믿는 개발자

0개의 댓글