Pagini recente » Cod sursa (job #131009) | Cod sursa (job #2308552) | Cod sursa (job #957042) | Cod sursa (job #1590136) | Cod sursa (job #1474533)
#include <iostream>
#include <fstream>
using namespace std;
int loc[1000001],loc2[1000001];
int main()
{
ifstream in("caramizi.in");
ofstream out("caramizi.out");
int n, m, i;
long long tot = 0,x;
in >> n;
in >> m;
for (i = 1;i <= n;i++)
{
in >> x;
tot += x;
loc[x-1]++;
}
loc2[1000000] = loc[1000000];
for (i = 999999;i >= 1;i--)
{
loc[i] += loc[i + 1];
loc2[i] = loc[i] + loc2[i + 1];
}
for (i = 1;i <= 20;i++)
{
out<<loc2[i]<<" ";
}
for (i = 1;i <= m;i++)
{
in >> x;
if (x > 1000000)
{
out << tot / x*x;
}
else
{
out << ((tot - loc2[x])/x)*x;
}
out << "\n";
}
}