#include<bits/stdc++.h> usingnamespace std; constint N = 1e5 + 10;
int T, n, l, r, f[N], a[N], L, R, sum;
voidWORK() { memset(f, 0, sizeof(int) * (n + 5)); scanf("%d%d%d", &n, &l, &r); for (int i = 1; i <= n; i++) scanf("%d", &a[i]); L = R = 1; sum = a[1]; for (int i = 1; i <= n; i++) { f[i] = max(f[i], f[i - 1]); while (R < i) sum += a[++R]; while (sum - a[L] >= l && L < R) sum -= a[L++]; if (l <= sum && sum <= r) f[i] = max(f[i], f[L - 1] + 1); } printf("%d\n", f[n]); }
intmain() { scanf("%d", &T); while (T--) WORK(); return0; }