Pagini recente » Cod sursa (job #386317) | Autentificare | Cod sursa (job #1874232) | Cod sursa (job #190930) | Cod sursa (job #585945)
Cod sursa(job #585945)
#include<stdio.h>
#include<algorithm>
#include<vector>
using namespace std;
#define INF 1000000
int A[50001];
int B[50001];
int N;
int a;
int b;
int nr;
int MAX = -INF;
void solve(void)
{
int b = 0;
B[1] = N;
for(int k=1;k<a;k++)
for(int i=1;i<a-k+1;i++)
{
b = (A[i+1]*(B[i]-B[i+1]))/(A[i+1]*2+A[i]);
B[i+1] += b;
B[i] -= b;
}
for(int i=1;i<=a;i++)
if(MAX<A[i]*B[i])
MAX = A[i]*B[i];
}
int main()
{
FILE *f = fopen("fabrica.in","r");
FILE *g = fopen("fabrica.out","w");
fscanf(f,"%d %d %d",&N,&a,&b);
for(int i=1;i<=a;i++)
fscanf(f,"%d",&A[i]);
sort(A+1,A+a+1);
solve();
fprintf(g,"%d",MAX);
fclose(g);
fclose(f);
return 0;
}