AT_abc412_c.[ABC412C] Giant Domino
普及-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
有 N 个多米诺骨牌,编号从 1 到 N。第 i 个多米诺骨牌的大小为 Si。
考虑将部分多米诺骨牌从左到右排成一行,然后推倒它们。当第 i 个多米诺骨牌向右倒下时,如果它右侧紧邻的多米诺骨牌的大小不超过 2Si,那么这个右侧的多米诺骨牌也会向右倒下。
你需要选择两个或更多的多米诺骨牌,从左到右排成一行,且排列必须满足以下条件:
- 最左侧的多米诺骨牌是第 1 个。
- 最右侧的多米诺骨牌是第 N 个。
- 当只推倒第 1 个多米诺骨牌时,第 N 个多米诺骨牌最终也会倒下。
是否存在满足上述条件的排列?如果存在,最少需要排列多少个多米诺骨牌?
你得回答 T 组独立的测试用例。
by yueyixuan2。
输入格式
输入通过标准输入以以下格式给出,其中 casei 表示第 i 个测试用例:
T
case1
case2
⋮
caseT
每个测试用例按以下格式给出:
N
S1 S2 … SN
输出格式
输出 T 行,第 i 行就是第 i 个测试用例的答案。
对于每个测试用例,如果不存在满足条件的多米诺骨牌排列方式,输出 −1;否则,输出所需排列的多米诺骨牌的最少数量。
输入输出样例
输入#1
3 4 1 3 2 5 2 1 100 10 298077099 766294630 440423914 59187620 725560241 585990757 965580536 623321126 550925214 917827435
输出#1
4 -1 3
说明/提示
样例解释
将多米诺骨牌从左到右按多米诺 1、多米诺 3、多米诺 2、多米诺 4 的顺序排列,可满足题目的条件。尤其对于第三个条件,当只将多米诺 1 向右推倒时,多米诺骨牌会按以下顺序倒下:
- 多米诺1的右侧放置着多米诺 3 。多米诺 3 的大小 S3=2,不超过 S1×2=1×2=2,因此多米诺 3 也会向右倒下。
- 多米诺 3 的右侧放置着多米诺 2。多米诺 2 的大小 S2=3,不超过 S3×2=2×2=4,因此多米诺 2 也会向右倒下。
- 多米诺 2 的右侧放置着多米诺 4。多米诺 4 的大小 S4=5,不超过 S2×2=3×2=6,因此多米诺 4 也会向右倒下。
由于排列 3 个及以下的多米诺骨牌无法满足题目的条件,所以答案是 4 个。
数据范围
所有数据保证:
- 1≤T≤105;
- 2≤N≤2×105;
- 1≤Si≤109;
- 所有测试数据的 N 总和不超过 2×105;
- 输入的所有数都是整数。
输入解题思路,AI测评打分。不知道怎么写?