Pagini recente » Cod sursa (job #3288859) | Cod sursa (job #367809) | Cod sursa (job #3201555) | Cod sursa (job #3163787) | Cod sursa (job #3139429)
#include <fstream>
using namespace std;
ifstream in ("grupuri.in");
ofstream out ("grupuri.out");
int n, k, grupe;
int v[100000];
long long sum;
int main()
{
in >> k >> n;
for(int i = 0; i < n; i ++){
in >> v[i];
sum += v[i];
}
for(int i = n - 1; i >= 0; i --){
int adaos = 0;
bool stop = 0;
out << "GRUPA " << n - i << endl;
for(int j = 0; j < k && stop == 0; j ++){
while(!v[n - j - adaos - 1] && n - j - adaos - 1 >= 0){
adaos ++;
}
v[n - j - adaos - 1] --;
out << n - j - adaos - 1 << " ";
if(n - j - adaos - 1 < 0)
stop = 1;
}
out << endl;
if(stop == 0)
grupe ++;
else
break;
}
out << grupe;
return 0;
}
/// 1: sum / k
/// 2: foloseste de la maxim catre minim pentru grupari