/* 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
{
{
// your code goes here
Scanner sc
=new Scanner
(System.
in); int n=sc.nextInt();
int k=sc.nextInt();
int[] arr=new int[n+1];
for(int i=1;i<=n;i++){
arr[i]=sc.nextInt();
}
int[] ps=new int[n+1];
for(int i=1;i<=n;i++){
ps[i]=ps[i-1]+arr[i];
}
HashMap
<Integer,Integer
> map
=new HashMap
<>(); map.put(0,0);
int maxLen=0;
int count=0;
for(int i=1;i<=n;i++){
int rem=ps[i]-k;
if(map.containsKey(rem)){
if(i-map.get(rem)>maxLen){
maxLen=i-map.get(rem);
count=1;
}else if(i-map.get(rem)==maxLen){
count++;
}
}
if(!map.containsKey(ps[i])){
map.put(ps[i],i);
}
}
System.
out.
println(count
+" whose length is "+maxLen
); }
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCQlTY2FubmVyIHNjPW5ldyBTY2FubmVyKFN5c3RlbS5pbik7CiAgICAgICAgaW50IG49c2MubmV4dEludCgpOwogICAgICAgIGludCBrPXNjLm5leHRJbnQoKTsKICAgICAgICBpbnRbXSBhcnI9bmV3IGludFtuKzFdOwogICAgICAgIGZvcihpbnQgaT0xO2k8PW47aSsrKXsKICAgICAgICAgICAgYXJyW2ldPXNjLm5leHRJbnQoKTsKICAgICAgICB9CiAgICAgICAgaW50W10gcHM9bmV3IGludFtuKzFdOwogICAgICAgIGZvcihpbnQgaT0xO2k8PW47aSsrKXsKICAgICAgICAgICAgcHNbaV09cHNbaS0xXSthcnJbaV07CiAgICAgICAgfQogICAgICAgIEhhc2hNYXA8SW50ZWdlcixJbnRlZ2VyPiBtYXA9bmV3IEhhc2hNYXA8PigpOwogICAgICAgIG1hcC5wdXQoMCwwKTsKICAgICAgICBpbnQgbWF4TGVuPTA7CiAgICAgICAgaW50IGNvdW50PTA7CiAgICAgICAgZm9yKGludCBpPTE7aTw9bjtpKyspewogICAgICAgICAgICBpbnQgcmVtPXBzW2ldLWs7CiAgICAgICAgICAgIGlmKG1hcC5jb250YWluc0tleShyZW0pKXsKICAgICAgICAgICAgICAgIGlmKGktbWFwLmdldChyZW0pPm1heExlbil7CiAgICAgICAgICAgICAgICAgICAgbWF4TGVuPWktbWFwLmdldChyZW0pOwogICAgICAgICAgICAgICAgICAgIGNvdW50PTE7CiAgICAgICAgICAgICAgICB9ZWxzZSBpZihpLW1hcC5nZXQocmVtKT09bWF4TGVuKXsKICAgICAgICAgICAgICAgICAgICBjb3VudCsrOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGlmKCFtYXAuY29udGFpbnNLZXkocHNbaV0pKXsKICAgICAgICAgICAgICAgIG1hcC5wdXQocHNbaV0saSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihjb3VudCsiIHdob3NlIGxlbmd0aCBpcyAiK21heExlbik7Cgl9Cn0=