Given N, the row number of Pascal’s triangle(row starting from 0). Find the count of odd numbers in N-th row of Pascal’s Triangle.
Input : 11 Output : 8 Input : 20 Output : 4
Approach : It appears the answer is always a power of 2. In fact, the following theorem exists :
THEOREM : The number of odd entries in row N of Pascal’s Triangle is 2 raised to the number of 1’s in the binary expansion of N.
Example: Since 83 = 64 + 16 + 2 + 1 has binary expansion (1010011), then row 83 has pow(2, 4) = 16 odd numbers.
Below is the implementation of above approach :
Time Complexity : O(L), where L is the length of binary representation of given N.
Reference : https://www.math.hmc.edu/funfacts/ffiles/30001.4-5.shtml
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.
- Sum of all elements up to Nth row in a Pascal triangle
- Check whether product of 'n' numbers is even or odd
- Check whether bitwise OR of N numbers is Even or Odd
- Check whether bitwise AND of N numbers is Even or Odd
- Bitwise AND of all the odd numbers from 1 to N
- Find an N x N grid whose xor of every row and column is equal
- Pascal's Triangle
- Leibniz harmonic triangle
- Calculate nCr using Pascal's Triangle
- Find nth Magic Number
- nth Rational number in Calkin-Wilf sequence
- Nth XOR Fibonacci number
- Program to find the Nth natural number with exactly two bits set
- Find the Number Occurring Odd Number of Times
- Swap all odd and even bits
- Check whether a given number is even or odd
- Check in binary array the number represented by a subarray is odd or even
- Count pairs with Odd XOR
- Toggle all odd bits of a number
- Set all odd bits of a number
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to firstname.lastname@example.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.