zetaz's blog

By zetaz, 11 years ago, In English

The Problem is :

Given N (1 <= N <= 10^6) numbers and K (1 <= K <= 23), each number can go up to 2^K-1. Now we can select some from the numbers to make a non empty set and OR all the number on the set, the problem ask the number of ways we can choose a set so the OR value will equal 2^K-1.

All i could think is O(N*(2^K)) Dynamic Programming which is too slow to solve this problem.

I'm sorry for my bad english. Does anyone have a better solution ?

Thanks

  • Vote: I like it
  • +3
  • Vote: I do not like it