Nu aveti permisiuni pentru a descarca fisierul grader_test18.ok
Cod sursa(job #3290266)
Utilizator | Data | 29 martie 2025 18:10:39 | |
---|---|---|---|
Problema | Hotel | Scor | 30 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.7 kb |
#include<bits/stdc++.h>
using namespace std;
ifstream fin("hotel.in"); ofstream fout("hotel.out");
int n, p;
vector<bool> viz;
vector<int> d;
void liber()
{fill(d.begin(), d.end(), 0);
for(int i=1; i<=n; i++)
if(!viz[i]) d[i]=d[i-1]+1;
else d[i]=0;
// for(int i=1; i<=n; i++) fout<<d[i]<<" "; fout<<'\n';
fout<<*max_element(d.begin(), d.end())<<'\n';
}
int main()
{
fin>>n>>p;
viz.resize(n+1, false); d.resize(n+1);
for(int i=0; i<p; i++)
{int c; fin>>c;
if(c==1)
{int a, b; fin>>a>>b;
for(int i=a; i<a+b; i++) viz[i]=true;
}
if(c==2)
{int a, b; fin>>a>>b;
for(int i=a; i<a+b; i++) viz[i]=false;
}
if(c==3) liber();
}
return 0;
}