Untitled
unknown
c_cpp
9 months ago
936 B
7
Indexable
#include <bits/stdc++.h>
using namespace std;
int main() {
int t;
cin>>t;
while(t--){
int n; cin>>n;
vector<int> rem(4);
long long total= 0;
for(int i=0;i<n;i++) {
int elem;
cin>>elem;
total+= elem;
rem[elem%4]++;
}
if(total %4 !=0){
cout<<-1<<endl;
continue;
}
int res=0;
int r1r3= min(rem[1], rem[3]);
res+= r1r3;
rem[1]-=r1r3;
rem[3]-=r1r3;
if(rem[1]%2 != 0 || rem[3]%2 !=0){
cout<<-1<<endl;
continue;
}
res+= (rem[1]/2) + (rem[3]/2);
rem[2]+= rem[1]/2;
rem[2]+= rem[3]/2;
if(rem[2]%2 !=0)
cout<<-1<<endl;
else
cout<<res+ (rem[2]/2)<<endl;
}
}
Editor is loading...
Leave a Comment