# Yet Again a Subarray Problem SUBPRNJL Help!

I have been getting TLE in one test-case. I don’t how to optimize it more. Please help me.

https://www.codechef.com/viewsolution/32883737

I don’t know why it’s happening. Can you help me with it? Or should I just copy-paste the code here.

https://www.codechef.com/viewsolution/32883737

This question is a part of ongoing DSA. Solutions are not visible yet.

So can I copy-paste the code here?

Yeah, I think you can do

``````#include<iostream>
#include<cmath>
#include<utility>
#include<set>

using namespace std;

#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;

#define ordered_set tree<pair<int, int> , null_type,less<pair<int, int>>, rb_tree_tag,tree_order_statistics_node_update>

int main() {
// ios::sync_with_stdio(false);
// cin.tie(NULL);
int t;
scanf("%d", &t);
while(t--) {
int n, k;
scanf("%d %d", &n, &k);
vector <int> v(n);
for (int i=0; i<n; i++) {
scanf("%d", &v[i]);
}
long long int count =0;
for (int i=0; i<n; i++) {
vector <int> count_indices (2001, 0);
ordered_set s;
for (int j=i; j<n; j++) {
int size = j - i + 1;
double temp = ceil(double (k) /size);
temp = ceil(k/temp);
s.insert({v[j], j});
count_indices[v[j]]++;
auto it = s.find_by_order(temp-1);
int f = count_indices[it->first];
if (count_indices[f]) {
count++;
}
}
}
printf("%lld\n", count);
}
return 0;
}``````