QOJ.ac

QOJ

حد الوقت: 1.0 s حد الذاكرة: 1024 MB مجموع النقاط: 100

#12189. 枕头堆叠

الإحصائيات

Eleanor 最近弄丢了她最喜欢的枕头。她对枕头非常挑剔,并根据柔软度对枕头进行分类。她丢失的枕头柔软度为 $C$,如果柔软度不完全相等,她就无法入睡。虽然她可以获得其他类型的枕头,但可能没有她想要的柔软度。作为一种变通方法,她愿意将多个枕头堆叠在一起睡觉。当柔软度分别为 $C_1, C_2, \dots, C_k$ 的枕头按此顺序堆叠时,最终的柔软度等于

$$C_1 + \left\lceil \frac{C_2}{2} \right\rceil + \left\lceil \frac{C_3}{4} \right\rceil + \dots + \left\lceil \frac{C_k}{2^{k-1}} \right\rceil$$

换句话说,堆叠中的第 $i$ 个枕头贡献了其柔软度的 $2^{-(i-1)}$,并向上取整。注意 $\lceil f \rceil$ 定义为满足 $x \ge f$ 的最小整数 $x$。

Eleanor 有很多钱,并且愿意使用她能获得的任意数量的每种枕头。你能帮她确定是否有一种堆叠枕头的方法来达到她想要的柔软度吗?

输入格式

第一行包含两个整数 $N$ 和 $C$ ($1 \le N \le 10^3$ 且 $1 \le C \le 10^4$)。$N$ 表示 Eleanor 可以获得的枕头类型数量,$C$ 表示期望的柔软度水平。下一行包含 $N$ 个整数 $a_1, a_2, \dots, a_N$ ($1 \le a_i \le 10^{18}$),表示 Eleanor 可以获得的枕头的柔软度。

输出格式

如果 Eleanor 可以通过堆叠枕头达到柔软度 $C$,输出 YES。否则,输出 NO。

样例

样例输入 1

1 1000
1

样例输出 1

YES

样例输入 2

1 5
4

样例输出 2

NO

样例输入 3

2 100
51 98

样例输出 3

YES

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.