题解 | #分贝壳#

分贝壳

http://www.nowcoder.com/practice/9b59014cc1544aeeb4082f5f37ecfaea

import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.IOException; public class Main{ public static void main(String[] args)throws IOException{ BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); long n = Long.parseLong(in.readLine()); long mid = 0; long left = 1,right = n; boolean flag = true; while(left <= right){ mid = (left + right)/2; flag = grtr(n,mid); if(flag){ right = mid -1; }else{ left = mid + 1; } } if(flag) System.out.println(mid); else System.out.println(mid + 1);

}
public static boolean grtr(long n,long m){
    long sum = 0;
    long temp = n;
    while(temp > m){
        sum += m;
        temp -= m;
        temp -= temp / 10;
    }
    sum += temp;
    if(sum >= n /2){
        return true;
    }else{
        return false;
    }
}

}

全部评论

相关推荐

点赞 评论 收藏
分享
06-19 19:06
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务