编程题
### 问题描述
你认为一个正整数是优秀的,当且仅当这个数是 $2$ 的整数次幂。举例来说,$1, 2, 4, 8 ...$ 这些数字都是优秀的。现在她的问题是, $[l,r]$ 这个区间的所有整数中,优秀的数字有多少个?请你回答她的问题,并告诉她这些数字是什么。
### 输入格式
一行两个非负整数 $l$ , $r$ 。
### 输出格式
第一行一个数字,表示区间中优秀的数字的个数 $k$ 。
第二行 $k$ 个数,表示这些优秀的数字。
### 样例输入
```
3 16
```
### 样例输出
```
3
4 8 16
```
### 评测数据范围
对于 $40$% 的数据,满足 $r \le 100$ 。
对于 $80$% 的数据,满足 $r \le 5000$ 。
对于 $100$% 的数据,满足 $0 \le l \le r \le 1000000$ 。