fork download
  1. n = int(input())
  2. a = list(map(int, input().split()))
  3.  
  4. res = set()
  5.  
  6. prev = set()
  7. #множество различных значений для подмассивов, заканчивающихся в предыдущей позиции
  8.  
  9. for i in range(n):
  10. curr = {a[i]}
  11. for v in prev: curr.add(v | a[i])
  12. res.update(curr)
  13.  
  14. print(len(res))
  15. print(res)
Success #stdin #stdout 0.13s 14048KB
stdin
3
1 2 4
stdout
3
{1, 2, 4}