import java.util.Scanner;
class SubarrayCount {
public static void main
(String[] args
) { Scanner scanner
= new Scanner
(System.
in);
long n = scanner.nextLong();
long k = scanner.nextLong();
long[] b = new long[(int)n];
for (int i = 0; i < n; i++) {
b[i] = scanner.nextLong();
}
long count = 0, sum = 0;
int j = 0;
for (int i = 0; i < n; i++) {
// what if the entire arr has sum <k then j might increment infinitely or ot of bounds so j<n
// move j so than sum is greater .. i.. j is valid .. then we need to find next i from which sum is valid.
// shrink window by removing b[i] at end
while (j < n && sum < k) {
sum += b[j];
j++;
}
// if sum >= k, then all subarrays starting at i and ending from j-1 .. n-1 are valid
if (sum >= k) {
count += (n - j + 1);
}
sum -= b[i]; // move i forward (shrink window)
}
scanner.close();
}
}
aW1wb3J0IGphdmEudXRpbC5TY2FubmVyOwpjbGFzcyBTdWJhcnJheUNvdW50IHsKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsKICAgICAgICBTY2FubmVyIHNjYW5uZXIgPSBuZXcgU2Nhbm5lcihTeXN0ZW0uaW4pOwogICAgICAgIAogICAgICAgIGxvbmcgbiA9IHNjYW5uZXIubmV4dExvbmcoKTsKICAgICAgICBsb25nIGsgPSBzY2FubmVyLm5leHRMb25nKCk7CiAgICAgICAgbG9uZ1tdIGIgPSBuZXcgbG9uZ1soaW50KW5dOwogICAgICAgIAogICAgICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgaSsrKSB7CiAgICAgICAgICAgIGJbaV0gPSBzY2FubmVyLm5leHRMb25nKCk7CiAgICAgICAgfQoKICAgICAgICBsb25nIGNvdW50ID0gMCwgc3VtID0gMDsKICAgICAgICBpbnQgaiA9IDA7CiAgICAgICAgCiAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCBuOyBpKyspIHsKICAgICAgICAgICAgLy8gd2hhdCBpZiB0aGUgZW50aXJlIGFyciBoYXMgc3VtIDxrIHRoZW4gaiBtaWdodCBpbmNyZW1lbnQgaW5maW5pdGVseSBvciBvdCBvZiBib3VuZHMgc28gajxuCiAgICAgICAgICAgIC8vIG1vdmUgaiBzbyB0aGFuIHN1bSBpcyBncmVhdGVyIC4uIGkuLiBqIGlzIHZhbGlkIC4uIHRoZW4gd2UgbmVlZCB0byBmaW5kIG5leHQgaSBmcm9tIHdoaWNoIHN1bSBpcyB2YWxpZC4KICAgICAgICAgICAgLy8gc2hyaW5rIHdpbmRvdyBieSByZW1vdmluZyBiW2ldIGF0IGVuZCAKICAgICAgICAgICAgd2hpbGUgKGogPCBuICYmIHN1bSA8IGspIHsKICAgICAgICAgICAgICAgIHN1bSArPSBiW2pdOwogICAgICAgICAgICAgICAgaisrOwogICAgICAgICAgICB9CiAgICAgICAgICAgIC8vIGlmIHN1bSA+PSBrLCB0aGVuIGFsbCBzdWJhcnJheXMgc3RhcnRpbmcgYXQgaSBhbmQgZW5kaW5nIGZyb20gai0xIC4uIG4tMSBhcmUgdmFsaWQKICAgICAgICAgICAgaWYgKHN1bSA+PSBrKSB7CiAgICAgICAgICAgICAgICBjb3VudCArPSAobiAtIGogKyAxKTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgc3VtIC09IGJbaV07ICAvLyBtb3ZlIGkgZm9yd2FyZCAoc2hyaW5rIHdpbmRvdykKICAgICAgICB9CgogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihjb3VudCk7CiAgICAgICAgc2Nhbm5lci5jbG9zZSgpOwogICAgfQp9Cg==