/* 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
int arr[] ={1, 2, 3, 4, 2, 5}; int k = 5;
HashMap
<Integer,Integer
>map
= new HashMap
<>(); map.put(0,-1);
int cs =0; int mc[] ={0,arr.length}; int mac[] = {0,0};
int minc =0; int maxc =0;
for(int i=0; i< arr.length; i++){
cs += arr[i];
int temp = cs-k;
if(!map.containsKey(cs)){map.put(cs,i);}
if(map.containsKey(temp)){
if(map.get(cs)- map.get(temp)< mc[1]-mc[0]){
mc[1] = map.get(cs);
mc[0] = map.get(temp);
minc = 1;
}
else if(map.get(cs)- map.get(temp) == mc[1]-mc[0]){
mc[1] = map.get(cs);
mc[0] = map.get(temp);
minc ++;
}
if(map.get(cs)- map.get(temp)> mac[1]-mac[0]){
mac[1] = map.get(cs);
mac[0] = map.get(temp);
maxc =1;
}
else if(map.get(cs)- map.get(temp) == mac[1]-mac[0]){
mac[1] = map.get(cs);
mac[0] = map.get(temp);
maxc++;
}
}
}
System.
out.
println("MAX -->"+maxc
); System.
out.
println("MIN -->"+minc
); }
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCS8vIHlvdXIgY29kZSBnb2VzIGhlcmUKCQlpbnQgYXJyW10gPXsxLCAyLCAzLCA0LCAyLCA1fTsgaW50IGsgPSA1OwogICAgICAgICAgICAgICBIYXNoTWFwPEludGVnZXIsSW50ZWdlcj5tYXAgPSBuZXcgSGFzaE1hcDw+KCk7CiAgICAgICAgICAgICAgIG1hcC5wdXQoMCwtMSk7CiAgICAgICAgICAgICAgIGludCBjcyA9MDsgaW50IG1jW10gPXswLGFyci5sZW5ndGh9OyBpbnQgbWFjW10gPSB7MCwwfTsKICAgICAgICAgICAgICAgaW50IG1pbmMgPTA7IGludCBtYXhjID0wOwogICAgICAgICAgICAgICBmb3IoaW50IGk9MDsgaTwgYXJyLmxlbmd0aDsgaSsrKXsKICAgICAgICAgICAgICAgIGNzICs9IGFycltpXTsKICAgICAgICAgICAgICAgIGludCB0ZW1wID0gY3MtazsKICAgICAgICAgICAgICAgIGlmKCFtYXAuY29udGFpbnNLZXkoY3MpKXttYXAucHV0KGNzLGkpO30KICAgICAgICAgICAgICAgIGlmKG1hcC5jb250YWluc0tleSh0ZW1wKSl7CiAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICBpZihtYXAuZ2V0KGNzKS0gbWFwLmdldCh0ZW1wKTwgbWNbMV0tbWNbMF0pewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtY1sxXSAgPSBtYXAuZ2V0KGNzKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWNbMF0gID0gbWFwLmdldCh0ZW1wKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluYyA9IDE7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgZWxzZSBpZihtYXAuZ2V0KGNzKS0gbWFwLmdldCh0ZW1wKSA9PSBtY1sxXS1tY1swXSl7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWNbMV0gID0gbWFwLmdldChjcyk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWNbMF0gID0gbWFwLmdldCh0ZW1wKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW5jICsrOwogICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgaWYobWFwLmdldChjcyktIG1hcC5nZXQodGVtcCk+IG1hY1sxXS1tYWNbMF0pewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hY1sxXSAgPSBtYXAuZ2V0KGNzKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWNbMF0gID0gbWFwLmdldCh0ZW1wKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXhjID0xOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYobWFwLmdldChjcyktIG1hcC5nZXQodGVtcCkgPT0gbWFjWzFdLW1hY1swXSl7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFjWzFdICA9IG1hcC5nZXQoY3MpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hY1swXSAgPSBtYXAuZ2V0KHRlbXApOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heGMrKzsKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJNQVggLS0+IittYXhjKTsKICAgICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIk1JTiAtLT4iK21pbmMpOwoJfQp9