β Subarray with given sum(Contest)
Subarray with given sum easy Time Limit: 2 sec Memory Limit: 128000 kB
```java
import java.io.*; // for handling input/output
import java.util.*; // contains Collections framework
// don't change the name of this class
// you can add inner classes if needed
class Main {
public static void main (String[] args) {
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
long k = scan.nextLong();
long[] arr = new long[n];
for(int i=0; i<n; i++){
arr[i] = scan.nextLong();
}
long sum = 0;
HashMap<Long, Integer> hm = new HashMap<>();
boolean flag = false;
for(int i=0; i<n; i++){
sum += arr[i];
if(sum == k){
System.out.println("1 " + (i+1));
flag = true;
break;
}
else if(hm.containsKey(sum-k)){
int start = hm.get(sum-k) + 1;
int end = i;
System.out.println((start + 1) + " " + (end+1));
flag = true;
break;
}
hm.put(sum,i);
}
if(!flag){
System.out.println(-1);
}
}
}
```Subarray with given sum
easy
Time Limit: 2 sec
Memory Limit: 128000 kBLast updated