大佬求调,玄关
查看原帖
大佬求调,玄关
1020566
prg_equal_depressed楼主2024/8/7 16:13
#include <bits/stdc++.h>
#define _int unsigned long long int
using namespace std;
_int n,m,q,x1[1000005],x2[1000005],s;
int main(){
    cin>>n>>m;
    for (_int i=1;i<=n;i++){
    	cin>>x1[i];
		x2[i]=x1[i];
	}
    while (m--){
        cin>>q;s=0;
        for (int i=60;i>=0;i--){
            _int cnt=0;
            for (int j=1;j<=n;j++){
            	cnt+=max((_int)0,(_int)pow(2,i)-(x1[j]%(_int)pow(2,i+1)));
			}
            if (cnt<=q){
                q-=cnt;s+=pow(2,i);
                for (int j=1;j<=n;j++){
                	x1[j]+=max((_int)0,(_int)pow(2,i)-(x1[j]%(_int)pow(2,i+1)));
				}
            }
        }
        for (int i=1;i<=n;i++){
        	x1[i]=x2[i];
		}
        cout<<s;
        if (m!=0) cout<<endl;
    }
    return 0;
}
2024/8/7 16:13
加载中...