can anyone help me to find a problem in my solution it is passing some subtasks but fails in some?
#include
using namespace std;
void insertion_sort (long long int array_sort[], long long int size);
long long int find_smallest_element (long long int array_sort[],long long int index,long long int size);
void swap_value (long long int array_sort[],long long int i_1, long long int index_2);
int main()
{
int number_of_testcases;
cin >> number_of_testcases;
for (int abcd=0; abcd <number_of_testcases;abcd++)
{
long long int n,k;
cin >> n >> k;
long long int blocks[n];
for (long long int i=0; i<n; i++)
{
cin >> blocks[i];
}
long long int i=0;
long long int a=0;
long long int b=0;
for ( i; (a<k)||(b<k)&& i<n ; i++)
{
insertion_sort(blocks,n);
if (a<k)
{
if(a==0)
{
a+=blocks[n-1];
blocks[n-1]=0;
insertion_sort(blocks,n);
continue;
//cout << a << " \n";
}
long long int j=0;
for ( j;a<k&&j<n;++j)
{
if (blocks[j]+a>=k||j==n-1)
{
a=a+blocks[j];
blocks[j]=0;
//cout << a << "\n";
break;
}
// cout << " " << j << "\n";
}
}
else
{
if (b==0)
{
b+=blocks[n-1];
blocks[n-1]=0;
continue;
insertion_sort(blocks,n);
}
long long int j=0;
for ( j;b<k&&j<n;j++)
{
if (blocks[j]+b>=k||j==n-1)
{
b=b+blocks[j];
blocks[j]=0;
break;
}
}
//cout << j << "\n";
//cout << b << "\n";
}
}
if (a>=k&&b>=k)
{
cout << i << "\n";
}
else
{
cout << "-1\n";
}
}
}
void insertion_sort(long long int array_sort[],long long int size)
{
for (long int i=0;i<size;i++)
{
long long int index =find_smallest_element(array_sort, i, size);
swap_value (array_sort, i, index);
}
}
long long int find_smallest_element(long long int array_sort[],long long int index, long long int size)
{
long long int index_of_smallest_value =index;
for (long int i = index +1; i<size;i++)
{
if (array_sort[i]<array_sort[index_of_smallest_value])
{
index_of_smallest_value=i;
}
}
return index_of_smallest_value;
}
void swap_value(long long int array_sort[], long long int i_1,long long int index_2)
{
long long int temp =array_sort[i_1];
array_sort[i_1]=array_sort[index_2];
array_sort[index_2]=temp;
}
//The above is the code I have tried to work with.
//I have done insertion_sort and then tried to optimally assign the values.
thanks in advance
https://www.codechef.com/viewsolution/41535464


