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

zadanie na bs z codeforces

Aruba Cloud VPS - 50% taniej przez 3 miesiące!
0 głosów
763 wizyt
pytanie zadane 3 maja 2023 w C i C++ przez Dani Obywatel (1,450 p.)
Witam,

Próbuję rozwiązać zadanie https://codeforces.com/problemset/problem/1736/C1. Pisze, że to jeden z problemów na binary search. Czy dałby radę mi ktoś powiedzieć jakie jest rozwiązanie z użyciem binary searcha oraz jak polecacie uczyć się tych różnych technik np. binary search to gdzie najlepiej waszym zdaniem rozwiązywać zadania.

Z góry bardzo dziękuję

1 odpowiedź

+2 głosów
odpowiedź 3 maja 2023 przez pasjonat_algorytmiki Pasjonat (19,540 p.)
wybrane 4 maja 2023 przez Dani
 
Najlepsza
Klasyczne zadania na gasienice. Ogólnie jest taka zależnośc, że jak da się coś zrobić gąsienicą, to zazwyczaj też bin searchem i odwrotnie. Tu prosta liniówka wchodzi gąsienicą, Binary searchem napewno można zrobić w O(N * lg N * lg N) - binary search z drzewem przedziałowym, pewnie też w O(N lg N) - binary search z sparse table, ale to zdecydowanie przesadzone struktury jak na to zadanie. Prosta gąsienica wchodzi w O(N).

A gdzie rozwiązywać najlepiej zadania, to oczywiście codeforces, atcoder, csesfi jest git, ale ja bardzo lubię szkopuła i archiwum zadań konkursowych(OIJ, OIG, OI), możesz zainwestować grosze w 2 książki(na ebook poincie masz pdf-y za 30-50 zł): "Zaprzyjaźnij się z algorytmami" oraz "Przygody Bajtazara 25 lat Olimpiady Informatycznej", przyczym, ta druga jest już dla trochę bardziej zawansowanych niż pierwsza. Są też ludzie, którzy polecają książki takich dwóch Azjatów - Competetive programing, chyba nawet jest kilka części, ja je mam, ale nie korzystam z nich. Jest też za darmo książka z mistrzostw polski w programowaniu zespołowym, za free pdf-a można sobie pobrać: https://www.mimuw.edu.pl/~idziaszek/algonotes/looking-for-a-challenge-2-pl.pdf   

jest też za free ksiązka z obozu proserwy: https://ilocamp.ilo.pl/images/stories/pros2010/proserwy_inf_2010.pdf

No i ogólnie masz jeszcze kółka OKI zawansowana,poziom2, od podstaw z wieeeloma archiwalnymi zadaniami i filmikami: https://oki.org.pl/

https://www.youtube.com/@OlimpijskieKoloInformatyczne

A co do zadań na binary searcha, to jest chyba moje ulubione zadanie na binary seacha: https://szkopul.edu.pl/problemset/problem/G50OwjoYk8gUak-2HGHGll4o/site/?key=statement

czy też zadanie największy plus z 2 etapu XV OIJ, jest też zadanko "Test na inteligencję" z OI-a, ono jest z OI-a ale jest banalne - zaimplementuj binary search.
komentarz 4 maja 2023 przez pasjonat_algorytmiki Pasjonat (19,540 p.)
A i tak btw, możesz wywalić unordered mapę i dać vector vectorów, bo wartości są chyba do max 10^6  czy coś tego typu o ile dobrze pamietam
komentarz 4 maja 2023 przez Dani Obywatel (1,450 p.)
edycja 4 maja 2023 przez Dani
Dzięki wielkie za pomoc. Nauczyłem się sposobu z codeforces edu, ale nie wychodził mi i znalazłem taki na geeksforgeeks. Czy to miałoby jakąś różnicę jakbym wyznaczał srodek
srodek = l + (r - l) / 2 ? Bo z tego co słyszałem to zapobiegam nadużyciu pamięci

Edit: Tak też wchodzi
komentarz 4 maja 2023 przez pasjonat_algorytmiki Pasjonat (19,540 p.)
l + (r - l) / 2

nie nie nie nie niesłucha się takich głupot
komentarz 4 maja 2023 przez pasjonat_algorytmiki Pasjonat (19,540 p.)
Ten mój sposób jest świetny, są inne fajne, ale ja najbardziej lubię ten, początek jedno wcześniej, koniec jedno dalej, żeby nie było WA i lecisz normalnie
komentarz 4 maja 2023 przez Whistleroosh Maniak (57,360 p.)
l + (r - l) / 2 służy zapobieganiu integer overflowa. Ale to i tak praktycznie nigdy się nie wydaży, bo liczby raczej nie będą większe od 1e18

Podobne pytania

0 głosów
1 odpowiedź 475 wizyt
0 głosów
1 odpowiedź 257 wizyt
pytanie zadane 25 lutego 2023 w C i C++ przez polandonion Dyskutant (7,560 p.)
0 głosów
0 odpowiedzi 234 wizyt
pytanie zadane 10 marca w Algorytmy przez Dani Obywatel (1,450 p.)

93,189 zapytań

142,204 odpowiedzi

322,030 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!

...