#include <bits/stdc++.h>
using namespace std;

int main() {
	// your code goes here
	
	vector<int> price = {2,5,1};
	vector<int> query = {8,4,3}; //ans: 16,6,5
	
	// vector<int> price = {1,2,3};
	// vector<int> query = {3,2,1,5}; //ans: 3,2,3,9
	
	int n = price.size();
	
    vector<int> ans(query.size(),0);
    
    // sort
    sort(price.begin(), price.end());
    
    // prefix:-
    vector<int> p(n,0);
    p[0] = price[0];
    for(int i=1; i<n; i++){
    	p[i] = p[i-1] + price[i];
    }
	
    for(int i=0; i<query.size(); i++){
    	
        auto it = lower_bound(price.begin(), price.end(), query[i]);
        
        int id = it - price.begin();
    	
        cout<< "found id="<<id<<"for query[i]=" << query[i]<<endl;
			
        //for <id
        ans[i] = query[i]*id - p[id-1];
    	
        //for >= id
        ans[i] += p[n-1]-p[id-1] - (n-id)*query[i];
	    cout<< ans[i]<< endl;
    }
    
    return 0;

}
