Eat Candy(暴力,水)

Eat Candy

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 8  Solved: 6
[Submit][Status][Web Board]

Description

 

   There is a box with infinite volume. At first there are ncandies in the box. Then every second you will eat some candies, left half of candies (round down) in the box. Then add k candies into the box. How many candies there are in the box after 109+7seconds?

Input

 

   There are multiple test cases. In each test case, there are only one line contains two integers n,k(1≤n,k≤109+7)

Output

 

 

    For each test case, output the answer in one line.

 

Sample Input

4 5
2 3

Sample Output

9
5

HINT

 

 


 


In the first test case:


1st second, 4->2, 2+5 = 7


2nd second, 7->3, 3+5 = 8


3rd second, 8->4, 4+5 = 9


4th second, 9->4, 4+5 = 9



1000000007th            9


So there are 9 candies in the box after 1000000007 seconds.

题解:每次n为n的一半加k,问经过1e9+7次后的值;
代码:
import java.util.Scanner;


public class EatCandy {
    public static void main(String[] args){
        int n, k;
        Scanner cin = new Scanner(System.in);
        while(cin.hasNext()){
            n = cin.nextInt();
            k = cin.nextInt();
            while(n != (n/2 + k)){
                n = n / 2 + k;
            }
            System.out.println(n);
        }
    }
}

 

posted @ 2016-05-17 14:16  handsomecui  阅读(384)  评论(0编辑  收藏  举报