Cod sursa(job #3363014)
| Utilizator | Data | 13 august 2026 13:09:38 | |
|---|---|---|---|
| Problema | Hotel | Scor | 50 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 1.06 kb |
#include <stdio.h>
#define MAXN 100000
char v[MAXN + 1];
int main() {
FILE *fin, *fout;
int n, p, op, pr, l, maxl, i, j;
fin = fopen("hotel.in", "r");
fout = fopen("hotel.out", "w");
fscanf(fin, "%d%d", &n, &p);
for (i = 1; i <= p; i++) {
fscanf(fin, "%d", &op);
switch (op) {
case 3:
maxl = l = 0;
for (j = 1; j <= n; j++) {
if (v[j] == 0) {
l++;
} else {
if (l > maxl) {
maxl = l;
}
l = 0;
}
}
if (l > maxl) {
maxl = l;
}
fprintf(fout, "%d\n", maxl);
break;
default:
fscanf(fin, "%d%d", &pr, &l);
for (j = pr; j < pr + l; j++) {
v[j] = op - 2 * (1 - (op & 1));
}
}
}
fclose(fin);
fclose(fout);
return 0;
}
