• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Max median 1486a codeforces

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
234 wizyt
pytanie zadane 10 marca w Algorytmy przez Dani Obywatel (1,450 p.)
zamknięte 11 marca przez Dani

Cześć,
próbuję rozwiązać zadanie z codeforces : https://codeforces.com/problemset/problem/1486/D .
Jednak patrząc na rozwiązanie i

#include <iostream>
#include <vector>
using namespace std;

int main() {
    int n, k;
    cin >> n >> k;
    vector<int> a(n);
    for (auto &i : a) cin >> i;
    int l = 1, r = n + 1;
    while (r - l > 1) {
        int m = (l + r) / 2;
        vector<int> b(n);
        for (int i = 0; i < n; ++i)
            if (a[i] >= m) {
                b[i] = 1;
            } else {
                b[i] = -1;
            }
        for (int i = 1; i < n; ++i) b[i] += b[i - 1];
        int mx = b[k - 1];
        int mn = 0;
        for (int i = k; i < n; ++i) {
            mn = min(mn, b[i - k]);
            mx = max(mx, b[i] - mn);
        }
        if (mx > 0) {
            l = m;
        } else {
            r = m;
        }
    }
    cout << l << '\n';
    return 0;
}

sprawdzając wynik kodu dla przypadku:
3 3
3 4 4

wynik wynosi w kodzie organizatora konkursu 3.
Czy mógłby mi ktoś wytłumaczyć dlaczego tak jest?

komentarz zamknięcia: ai <= n, więc 4 nie może być dla tablicy o wielkości 3

Podobne pytania

0 głosów
0 odpowiedzi 232 wizyt
0 głosów
0 odpowiedzi 108 wizyt
pytanie zadane 21 stycznia w Algorytmy przez Szyszka Gaduła (3,510 p.)
0 głosów
1 odpowiedź 211 wizyt
pytanie zadane 31 grudnia 2023 w Algorytmy przez Szyszka Gaduła (3,510 p.)

93,190 zapytań

142,205 odpowiedzi

322,031 komentarzy

62,518 pasjonatów

Advent of Code 2024

Top 15 użytkowników

  1. 2817p. - dia-Chann
  2. 2769p. - Łukasz Piwowar
  3. 2759p. - Łukasz Eckert
  4. 2738p. - CC PL
  5. 2704p. - Tomasz Bielak
  6. 2678p. - Łukasz Siedlecki
  7. 2666p. - rucin93
  8. 2485p. - Marcin Putra
  9. 2418p. - Michal Drewniak
  10. 2367p. - Adrian Wieprzkowicz
  11. 2317p. - Mikbac
  12. 2239p. - Michał Telesz
  13. 2156p. - Anonim 3619784
  14. 1733p. - rafalszastok
  15. 1628p. - Dominik Łempicki (kapitan)
Szczegóły i pełne wyniki

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Wprowadzenie do ITsec, tom 1 Wprowadzenie do ITsec, tom 2

Można już zamawiać dwa tomy książek o ITsec pt. "Wprowadzenie do bezpieczeństwa IT" - mamy dla Was kod: pasja (użyjcie go w koszyku), dzięki któremu uzyskamy aż 15% zniżki! Dziękujemy ekipie Sekuraka za fajny rabat dla naszej Społeczności!

...