/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
Scanner sc
= new Scanner
(System.
in); int t = sc.nextInt();
for(int j=0;j<t;j++){
int n= sc.nextInt();
int h= sc.nextInt();
int k= sc.nextInt();
int [] arr= new int[n];
int sum=0;
int [] suffix= new int[n];
int [] prefix= new int[n];
for(int m=0;m<n;m++){
arr[m]=sc.nextInt();
sum=sum+arr[m];
}
prefix[0]=arr[0];
for(int m =1;m<n;m++){
prefix
[m
]=Math.
min(arr
[m
],prefix
[m
-1]); }
suffix[n-1]=arr[n-1];
for(int m =n-2;m>=0;m--){
suffix
[m
]=Math.
max(arr
[m
],prefix
[m
+1]); }
double dps=(double)sum/n;
double timeRequired
= Math.
ceil(h
/dps
); int reloads = (int)(timeRequired/n)-1;
reloads= reloads>=0 ? reloads : 0;
int reloadShot = (int)timeRequired%n;
if(reloadShot==0){
System.
out.
println(timeRequired
+(k
*reloads
)); }
else{
double remaining = h-(dps*n*reloads);
int dpsLeft=0;
for(int m=0;m<reloadShot-1;m++){
dpsLeft=dpsLeft+arr[m];
}
remaining=remaining-dpsLeft;
timeRequired=timeRequired-(int)(timeRequired%n);
if(remaining<=0){
System.
out.
println(timeRequired
+(k
*reloads
)+reloadShot
-1); }
else{
remaining=remaining-suffix[reloadShot]+prefix[reloadShot-1];
if(remaining<=0){
System.
out.
println(timeRequired
+(k
*reloads
)+reloadShot
-1); }
else{
System.
out.
println((int)timeRequired
+(k
*reloads
)+reloadShot
);
}
}
}
}
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCVNjYW5uZXIgc2MgPSBuZXcgU2Nhbm5lcihTeXN0ZW0uaW4pOwoJCWludCB0ID0gc2MubmV4dEludCgpOwoJCWZvcihpbnQgaj0wO2o8dDtqKyspewoJCQlpbnQgbj0gc2MubmV4dEludCgpOwoJCQlpbnQgaD0gc2MubmV4dEludCgpOwoJCQlpbnQgaz0gc2MubmV4dEludCgpOwoJCQlpbnQgW10gYXJyPSBuZXcgaW50W25dOwoJCQlpbnQgc3VtPTA7CgkJCWludCBbXSBzdWZmaXg9IG5ldyBpbnRbbl07CgkJCWludCBbXSBwcmVmaXg9IG5ldyBpbnRbbl07CgkJCWZvcihpbnQgbT0wO208bjttKyspewoJCQkJYXJyW21dPXNjLm5leHRJbnQoKTsKCQkJCXN1bT1zdW0rYXJyW21dOwoJCQl9CgkJCXByZWZpeFswXT1hcnJbMF07CgkJCWZvcihpbnQgbSA9MTttPG47bSsrKXsKCQkJCXByZWZpeFttXT1NYXRoLm1pbihhcnJbbV0scHJlZml4W20tMV0pOwoJCQl9CgkJCXN1ZmZpeFtuLTFdPWFycltuLTFdOwoJCQlmb3IoaW50IG0gPW4tMjttPj0wO20tLSl7CgkJCQlzdWZmaXhbbV09TWF0aC5tYXgoYXJyW21dLHByZWZpeFttKzFdKTsKCQkJfQoJCQlkb3VibGUgZHBzPShkb3VibGUpc3VtL247CgkJCWRvdWJsZSB0aW1lUmVxdWlyZWQgPSBNYXRoLmNlaWwoaC9kcHMpOwoJCQlpbnQgcmVsb2FkcyA9IChpbnQpKHRpbWVSZXF1aXJlZC9uKS0xOwoJCQlyZWxvYWRzPSByZWxvYWRzPj0wID8gcmVsb2FkcyA6IDA7CgkJCWludCByZWxvYWRTaG90ID0gKGludCl0aW1lUmVxdWlyZWQlbjsKCQkJaWYocmVsb2FkU2hvdD09MCl7CgkJCQlTeXN0ZW0ub3V0LnByaW50bG4odGltZVJlcXVpcmVkKyhrKnJlbG9hZHMpKTsKCQkJfQoJCQllbHNlewoJCQkJZG91YmxlIHJlbWFpbmluZyA9IGgtKGRwcypuKnJlbG9hZHMpOwoJCQkJaW50IGRwc0xlZnQ9MDsKCQkJCWZvcihpbnQgbT0wO208cmVsb2FkU2hvdC0xO20rKyl7CgkJCQkJZHBzTGVmdD1kcHNMZWZ0K2FyclttXTsKCQkJCX0KCQkJCXJlbWFpbmluZz1yZW1haW5pbmctZHBzTGVmdDsKCQkJCXRpbWVSZXF1aXJlZD10aW1lUmVxdWlyZWQtKGludCkodGltZVJlcXVpcmVkJW4pOwoJCQkJaWYocmVtYWluaW5nPD0wKXsKCQkJCQlTeXN0ZW0ub3V0LnByaW50bG4odGltZVJlcXVpcmVkKyhrKnJlbG9hZHMpK3JlbG9hZFNob3QtMSk7CgkJCQl9CgkJCQllbHNlewoJCQkJCXJlbWFpbmluZz1yZW1haW5pbmctc3VmZml4W3JlbG9hZFNob3RdK3ByZWZpeFtyZWxvYWRTaG90LTFdOwoJCQkJCWlmKHJlbWFpbmluZzw9MCl7CgkJCQkJCVN5c3RlbS5vdXQucHJpbnRsbih0aW1lUmVxdWlyZWQrKGsqcmVsb2FkcykrcmVsb2FkU2hvdC0xKTsKCQkJCQl9CgkJCQkJZWxzZXsKCQkJCQkJU3lzdGVtLm91dC5wcmludGxuKChpbnQpdGltZVJlcXVpcmVkKyhrKnJlbG9hZHMpK3JlbG9hZFNob3QpOwoJCQkJCgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoJfQp9