Cod sursa(job #3363014)

Utilizator CorvinJudge0Corvin Judge CorvinJudge0 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;
}