My issue
Getting wrong ans continuously…
here’s my code
#include<bits/stdc++.h>
using namespace std;
int main()
{
int c;
cin>>c;
while(c–)
{
int n,m;
cin>>n>>m;
int *p = new int[n];
for(int i=0; i<n; i++)
cin>>p[i];
sort(p, p+n, greater());
int sum=0;
int count=0;
for(int i=0; i<n; i++)
{
if(sum<m){
sum+=p[i];
count++;
}
else
break;
}
if(sum>=m)
cout<<count<<endl;
else
cout<<"-1"<<endl;
delete p;
}
return 0;
}
My code
#include<bits/stdc++.h>
using namespace std;
int main()
{
int c;
cin>>c;
while(c--)
{
int n,m;
cin>>n>>m;
int *p = new int[n];
for(int i=0; i<n; i++)
cin>>p[i];
sort(p, p+n, greater<int>());
int sum=0;
int count=0;
for(int i=0; i<n; i++)
{
if(sum<m){
sum+=p[i];
count++;
}
else
break;
}
if(sum>=m)
cout<<count<<endl;
else
cout<<"-1"<<endl;
delete p;
}
return 0;
}
Learning course: Sorting using C++
Problem Link: CodeChef: Practical coding for everyone