AT_ttpc2023_b.Almost Large
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
给定一个大小为 N 的非负整数集合 S={S1,S2,…,SN}。
有一个变量 x,初始时 x=S1。你可以不限次数地进行以下操作:
- 选择一个 y∈S。当且仅当 y 满足下述条件时,将 x 赋值为 y。
- 条件:将 x 和 y 都用三进制表示,记第 3j 位的数字分别为 Xj 和 Yj。若所有 j 中满足 Xj>Yj 的 j 至多只有 1 个,则可以进行这一步操作。
请判断是否可以通过若干次操作使 x=SN。
输入格式
输入以如下格式从标准输入读入:
N S1 S2 … SN
输出格式
如果可以使 x=SN,输出 Yes;否则输出 No。
输入输出样例
输入#1
2 21 14
输出#1
Yes
输入#2
2 12 1
输出#2
No
输入#3
5 5 15 45 135 405
输出#3
Yes
说明/提示
样例解释 1
可以按如下方式从 x=21 变为 x=14。
- 初始时,x=21。选择 y=14 并进行操作。
- x 和 y 的三进制表示分别为 (X2,X1,X0)=(2,1,0),(Y2,Y1,Y0)=(1,1,2)。
- 满足 Xj>Yj 的 j 只有 j=2,共 1 个,因此允许将 x 赋为 14。
样例解释 2
将 x=12 和 y=1 用三进制表示,分别为 (X2,X1,X0)=(1,1,0),(Y2,Y1,Y0)=(0,0,1)。
满足 Xj>Yj 的 j 有 j=1,2 共 2 个,因此不能从 x=12 赋值为 1。
数据范围
- 2≤N≤2×105
- 0≤Si<312
- 若 i=j,则 Si=Sj
- 所有输入均为整数。
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?