Pagini recente » Cod sursa (job #2066682) | Cod sursa (job #403099) | Cod sursa (job #2245347) | Cod sursa (job #828083) | Cod sursa (job #2394205)
#include <iostream>
#define eu_am return
#define atata_timp_cat while
#define pentru for
#define numar_intreg int
#define returneaza_numar_intreg int
#define afiseaza cout
#define citeste cin
#define cel_mai_superior max
using namespace std;
numar_intreg t,n;
struct
{
int d,u;
}vector[109];
numar_intreg ap[25009],ans=1;
returneaza_numar_intreg subprogramul_vietii ()
{
pentru (numar_intreg i=1;i<=n;++i)
{
numar_intreg di=vector[i].d,ui=vector[i].u;
numar_intreg ctimp=di+ui;
atata_timp_cat (ctimp<t)
{
ap[ctimp]++;
ctimp=ctimp+2*di+ui+1;
}
}
pentru (numar_intreg i=1;i<=t;++i)
{
ans=cel_mai_superior(ans,ap[i]);
}
numar_intreg valoare=ans-1;
eu_am valoare;
}
int main()
{
citeste>>t>>n;
pentru (numar_intreg i=1;i<=n;++i)
{
citeste>>vector[i].d;
}
pentru (numar_intreg i=1;i<=n;++i)
{
citeste>>vector[i].u;
}
//calculez cati roboti se intalesc la un moment dat la izvor daca nu stau deloc la coada,
// deci daca am destule robinete ar trebui sa rezolve cerinta 1 (daca asta cere), daca nu,
// merge oricum dand prioritate celui cu numar de indice mai mic si adunand cati sunt in fata la momentu
// pe care il ocupa
afiseaza<<subprogramul_vietii();
}