#include <bits/stdc++.h>
#define int long long
using namespace std;
void solve() {
int n,c;
cin>>n>>c;
vector<int> v(n);
for(int i=0;i<n;i++)cin>>v[i];
vector<int> h(n);
for(int i=0;i<n;i++){
h[i]=(i+1)+v[i];
}
sort(h.begin(),h.end());
int cnt=0;
int i=0;
while(i<n){
if(c>=h[i]){
c-=h[i];
cnt++;
}
else{
break;
}
i++;
}
cout<<cnt<<endl;
}
signed main() {
int t;
cin >> t;
while (t--) {
solve();
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgaW50IGxvbmcgbG9uZwp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKCnZvaWQgc29sdmUoKSB7CglpbnQgbixjOwoJY2luPj5uPj5jOwoJdmVjdG9yPGludD4gdihuKTsKCWZvcihpbnQgaT0wO2k8bjtpKyspY2luPj52W2ldOwoJdmVjdG9yPGludD4gaChuKTsKCWZvcihpbnQgaT0wO2k8bjtpKyspewoJCWhbaV09KGkrMSkrdltpXTsKCX0KCXNvcnQoaC5iZWdpbigpLGguZW5kKCkpOwoJaW50IGNudD0wOwoJaW50IGk9MDsKCXdoaWxlKGk8bil7CgkJaWYoYz49aFtpXSl7CgkJCWMtPWhbaV07CgkJCWNudCsrOwoJCX0KCQllbHNlewoJCQlicmVhazsKCQl9CgkJaSsrOwoJfQoJY291dDw8Y250PDxlbmRsOwoJCn0KCnNpZ25lZCBtYWluKCkgewogICAgaW50IHQ7CiAgICBjaW4gPj4gdDsKICAgIHdoaWxlICh0LS0pIHsKICAgICAgICBzb2x2ZSgpOwogICAgfQogICAgcmV0dXJuIDA7Cn0K
MTAKNSA2CjEgMSAxIDEgMQo4IDMyCjEwMCA1MiAxMyA2IDkgNCAxMDAgMzUKMSAxCjUKNCA1CjQgMyAyIDEKNSA5CjIgMyAxIDQgMQo1IDgKMiAzIDEgNCAxCjQgMwoyIDMgNCAxCjQgOQo1IDQgMyAzCjIgMTQKNyA1CjUgNjAwMDAwMDAwCjUwMDAwMDAwMCA0MDAwMDAwMDAgMzAwMDAwMDAwIDIwMDAwMDAwMCAxMDAwMDAwMDAK
10
5 6
1 1 1 1 1
8 32
100 52 13 6 9 4 100 35
1 1
5
4 5
4 3 2 1
5 9
2 3 1 4 1
5 8
2 3 1 4 1
4 3
2 3 4 1
4 9
5 4 3 3
2 14
7 5
5 600000000
500000000 400000000 300000000 200000000 100000000