Pagini recente » Cod sursa (job #2316941) | Cod sursa (job #2892047) | Cod sursa (job #158956) | Cod sursa (job #3277113) | Cod sursa (job #2514503)
#include <fstream>
#include <deque>
#include <iomanip>
#define NMAX 30005
using namespace std;
ifstream f("secv3.in");
ofstream g("secv3.out");
int scost[NMAX], stimp[NMAX], n, u, l;
void citire(){
f>>n>>l>>u;
for(int i=1; i<=n; i++){
f>>scost[i];
scost[i]+=scost[i-1];
}
for(int i=1; i<=n; i++){
f>>stimp[i];
stimp[i]+=stimp[i-1];
}
}
double fractie(int start, int finish){
return (double)(scost[finish]-scost[start-1])/(stimp[finish]-stimp[start-1]);
}
void secventa(){
int pozstart = 1;
double vmax = fractie(1, l);
for(int i=l+1; i<=n; i++){
if(i - pozstart + 1 > u)
pozstart ++;
double ma1 = fractie(i-l+1, i);
double ma2 = fractie(pozstart, i);
if(ma1>ma2){
vmax = max(vmax, ma1);
pozstart = i - l + 1;
}
else vmax = max(vmax, ma2);
}
g<<fixed<<setprecision(2)<<vmax;
}
int main()
{
citire();
secventa();
return 0;
}