P14321 [GeeksforGeeks] Candy packetssample test case file to be added1632
普及-
题目描述

Given a number N denoting candies. Find how many packets are needed to contain the number if 1st packet can contain 1 candy, 2nd packet can contain 2 candies, 3rd packet can contain 4 candies and so on.
Example 1:
Input:
N = 2
Output:
2
Explanation:
Put 1 candy in first packet.
Put 1 candy in second packet.
Thus two,packets are required.
Example 2:
Input:
N = 8
Output:
4
Explanation:
Put 1 candy in first packet.
Put 2 candies in second packet.
Put 4 candies in third packet.
Put 1 candy in fourth packet.
Thus 4 packets are required.
Your Task:
You don't need to read input or print anything.Your Task is to complete the function countPackets() which takes a number N as input parameter and returns the number of packets required to contain it.
Expected Time Complexity:O(logN)
Expected Auxillary Space:O(1)
Constraints:
1<= N <= 10^{18}

输入格式

见题面

输出格式

见题面

样例输入
N = 2
样例输出
2