My issue
tell me what is the problem in my above approach
My code
#include <bits/stdc++.h>
using namespace std;
typedef long long int lwi;
int main() {
// your code goes here
lwi t;
cin>>t;
while(t--){
lwi n;
cin>>n;
lwi arr[n];
for(lwi i=0;i<n;i++){
cin>>arr[i];
}
sort(arr,arr+n);
lwi k=log2(arr[n-1]);
lwi sum=0,j;
for(j=0;j<k;j++){
lwi m=0;
for(lwi i=0;i<n;i++){
if(arr[i]%2==1){
m=1;
break;
}
}
if(m==1){
for(lwi i=0;i<n;i++){
arr[i]/=2;
}
}else{
break;
}
}
do{
lwi m=1;
for(lwi i=0;i<n;i++){
arr[i]/=2;
if(arr[i]%2==1){
sum++;
arr[i]=0;
}
}
}while(j<k);
cout<<sum<<endl;
}
}
Problem Link: Array Removal Practice Coding Problem