Cod sursa(job #480850)

Utilizator ooctavTuchila Octavian ooctav Data 29 august 2010 21:26:09
Problema Secventa 3 Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.04 kb
#include<cstdio>
#include<algorithm>
#include<iostream>
using namespace std;

#define c first
#define t second
const int NMAX = 30005;
const int INF = 1000000000;

long long N, L, U;
long long P = 1LL<<60, REZ = 0;
pair<long long, long long> a[NMAX];
pair<long long, long long> sum[NMAX];
pair<long long, long long> best[NMAX];
long long back;


void citire()
{
	long long x;
	cin >> N >> L >> U;
	for(int i = 1 ; i <= N ; i++)
	{
		cin >> x;
		a[i].c = 100 * x;
	}
	for(int i = 1 ; i <= N ; i++)
		cin >> a[i].t;
}

void rezolva()
{
	int i;
	long long sc, st;
	for(int k = L ; k <= U ; k++)
	{
		sc = 0;st = 0;
		for(i = 1 ; i <= k ; i++)
		{
			sc += a[i].c;
			st += a[i].t;
		}
		REZ = max(REZ, sc / st);
		for(; i <= N ; i++)
		{
			sc += a[i].c;
			st += a[i].t;
			sc -= a[i - k].c;
			st -= a[i - k].t;
			REZ = max(REZ, sc / st);
		}
	}
}

int main()
{
	freopen("secv3.in", "r", stdin);
	freopen("secv3.out", "w", stdout);
	citire();
	rezolva();
	printf("%.2lf\n", (double)REZ/100);
	return 0;
}