RAITIO 정말 알풀리네요ㅠㅠ 뭐가 문제일까요?(소스첨부)

  • jungungi
    jungungi

    뭐가 문제인지를 알수가 없네요!
    고수님들 의견 부탁드립니다.

    import java.util.Scanner;

    public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int cases = sc.nextInt();
        while (cases-- > 0) {
            double y = sc.nextInt();
            double x = sc.nextInt();
            calculatBinaryTree(x, y);
        }
    }
    
    public static void calculatBinaryTree(double x, double y) {
        int z = (int) (x / y * 100);
        int t = 0;
        int start = 0;
        int end = 2000000000;
        int i = ((start + end) / 2);    
        while (true) {
            // System.out.println("i = " + i);
            // System.out.println("start = " + start);
            // System.out.println("end = " + end);
            t = (int) ((x + i) / (y + i) * 100);
            // System.out.println("(x + i) / (y + i) * 100) = " + t);
            if (t >= z + 1) {
                end = i;
            } else {
                start = i;
            }
    
            i =  ((start + end) / 2);
            if (i == start || i == end)
                break;
            if (i <= 0) 
            {
                System.out.println(-1);
                return;
            }
        }
        if ((int) ((x + start) / (y + start) * 100) >= z + 1)
            System.out.println(start);
        else if ((int) ((x + end) / (y + end) * 100) >= z + 1)
            System.out.println(end);        
        else
            System.out.println(-1);
        return;
    }

    }


    10년 전
0개의 댓글이 있습니다.
  • 정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.