F.A.Q
Hand In Hand
Online Acmers
Problem Archive
Realtime Judge Status
Authors Ranklist
 
     C/C++/Java Exams     
ACM Steps
Go to Job
Contest LiveCast
ICPC@China
Best Coder beta
VIP | STD Contests
    DIY | Web-DIY beta
Author ID 
Password 
 Register new ID

净化

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 1477    Accepted Submission(s): 282


Problem Description
给一个整数数组 $a_1,a_2,\cdots,a_n$ 和一个正整数 $m$ 。有一个数 $x$ ,初始为 $0$ 。称对其进行一轮操作为:让 $x$ 依次加上 $a_1,a_2,\cdots ,a_n$ 。如果在某一次加上 $a_i$ 后 $x<0$ ,则将 $x$ 立刻变为 $0$ ,如果在某一次加上 $a_i$ 后 $x\geq m$ ,立刻结束这一轮操作。不断对 $x$ 进行操作,你想要求出经过几轮操作后 $x$ 第一次满足 $x\geq m$ ,或者判断永远也无法满足。
 

Input
第一行一个正整数 $T(1\leq T\leq 20)$ ,代表测试组数。

接下来 $T$ 组数据中,每组数据的第一行包含包含两个正整数 $n,m(1\leq n\leq 100000,1\leq m\leq 10^{18})$ 。

第二行包含 $n$ 个整数 $a_1,a_2,\cdots,a_n(-10^9\leq a_i\leq 10^9)$ 。
 

Output
$T$ 行,每行一个整数,代表几轮操作第一次 $x\geq m$ ,或者 $-1$ 代表永远无法达到。
 

Sample Input
2 4 100 3 -5 10 -5 3 9 3 -10 6
 

Sample Output
31 2
 

Source
 

Statistic | Submit | Discuss | Note
Hangzhou Dianzi University Online Judge 3.0
Copyright © 2005-2024 HDU ACM Team. All Rights Reserved.
Designer & Developer : Wang Rongtao LinLe GaoJie GanLu
Total 0.000000(s) query 1, Server time : 2024-06-01 22:51:08, Gzip enabled