A. Divide and Multiply(900)

#include<iostream>
#include<cmath>
#include<cstring>
#include<string>
#include<algorithm>
using namespace std;
int main(){
    long long n,sum=0,ans,a[1000],m;
    scanf("%lld",&n);
    for(int i=1;i<=n;i++){
        scanf("%lld",&m);
        memset(a,0,sizeof(a));
        ans=0,sum=0;
        for(int j=1;j<=m;j++){
            scanf("%lld",&a[j]);
            while(a[j]>=2&&a[j]%2==0){
                a[j]=a[j]/2;
                ans++;
            }
        }
        sort(a+1,a+1+m);
        sum=pow(2,ans)*a[m];
        for(int j=1;j<m;j++){
            sum+=a[j];
        }
        printf("%lld\n",sum);
    }
    return 0;
} 

 

posted @ 2022-01-12 16:08  happycrazy  阅读(32)  评论(0)    收藏  举报