Podsumowanie OKI#17

Podsumowanie OKI#17

Nasze zajęcia OKI #17 to jasne przesłanie: Mamy być ODKRYWCAMI / POSZUKIWACZAMI / autorami NOWYCH POMYSŁÓW:
https://tiny.pl/tscjt

Wspólnie zrobiliśmy zadanie z obozu dla najlepszych licealistów w Polsce:
https://tiny.pl/tscjg
które również jest w naszej Pracy Domowej:
https://tiny.pl/tscdg

Dlaczego zrobiliśmy zadanie Kreatywna księgowość?
https://tiny.pl/tsccd
Pozwoliło nam poznać SUPER SZYBKĄ strukturę SET:
https://tiny.pl/tscw9
i rozwiązać nasze zadanie
https://youtu.be/ysWHtsT96e0?t=3507
w języku C++:
https://youtu.be/ysWHtsT96e0?t=3905

Powiedzieliśmy sobie o nieoficjalnych mistrzostwach Polski w algorytmice:
https://youtu.be/ysWHtsT96e0?t=7216

Zachęciliśmy się do startowania w Olimpiadzie Informatycznej Licealistów.
I wytłumaczyliśmy na czym polega strategia CIEŻSZYCH RĘKAWIC:
https://youtu.be/ysWHtsT96e0?t=1814

Powiedzieliśmy w sobotę też, że jeśli nie wszystko wychodzi to DOBRZE – rozwijamy się.
Mamy challenge!
https://youtu.be/ysWHtsT96e0?t=6835

Jeszcze raz pokazaliśmy, że PRACA DOMOWA JEST NAJWAŻNIEJSZA!
https://tiny.pl/tscwj

Dlaczego niektóre quizy zachęcają nas do rozwiązania zadań ręcznie, bez pomocy komputera?
W ten sposób rozumiemy całość algorytmu!
https://youtu.be/ysWHtsT96e0?t=7362
Quizy przygotowują nas do zajęć!
https://youtu.be/ysWHtsT96e0?t=7493

Na Kham Academy pojawiło się zadanie Basen:
https://youtu.be/ysWHtsT96e0?t=7090
które jest pięknym połączeniem matematyki i informatyki:
https://youtu.be/ysWHtsT96e0?t=7293
Więcej, zadanie Basen jest analogiczne do realnych problemów:
https://youtu.be/ysWHtsT96e0?t=7129
Zadanie Basen jest na platformie OKI:
https://oki.org.pl/omowienie-zadania-basen/

Wytłumaczyliśmy sobie dokładnie co to jest niesamowita struktura SET?
https://tiny.pl/tscw9
Ta część praktycznie rozwiązuje zadanie Słownik z pracy domowej:
https://tiny.pl/tscdg

Quiz posłużył nam do omówienia sum prefiksowych modulo:
https://youtu.be/ysWHtsT96e0?t=910

Zwróciliśmy uwagę na zakres zmiennych!
Szczególnie na różnicę między long a long long:
https://youtu.be/ysWHtsT96e0?t=4090

Ognia!
Daniel Olkowski

--------------------
Omówienie zadania Kreatywna księgowość:
https://youtu.be/ysWHtsT96e0?t=1920
Link do zadania Kreatywna księgowość:
https://tiny.pl/tscc9
-
Kod C++ programu Kreatywna księgowość, który otrzymuje 100%
-
#include <bits/stdc++.h>
using namespace std;

const int MAX_DNI = 2e5+7;
long long int sum_pref_modulo[MAX_DNI];
set<long long int> reszty;

int main() {
int liczba_dni;
long long int liczba_uczestnikow;
long long int akt_reszta, max_reszta;
long long int wydatek;
set<long long int>::iterator it;
int i;

cin >> liczba_dni;
cin >> liczba_uczestnikow;

for (i=1; i<=liczba_dni; ++i) {
cin >> wydatek;
sum_pref_modulo[i] = (sum_pref_modulo[i-1]+wydatek) % liczba_uczestnikow;
sum_pref_modulo[i] = (sum_pref_modulo[i]+liczba_uczestnikow) % liczba_uczestnikow;
}

reszty.insert(0);
max_reszta=0;
for (i=1; i<=liczba_dni; ++i) {
it = reszty.upper_bound(sum_pref_modulo[i]);
if ( it != reszty.end() ) {
akt_reszta = liczba_uczestnikow - ((*it)-sum_pref_modulo[i]);
max_reszta = max (max_reszta, akt_reszta);
}
akt_reszta = sum_pref_modulo[i];
max_reszta = max (max_reszta, akt_reszta);
reszty.insert(sum_pref_modulo[i]);
}

cout << max_reszta << "\n";
return 0;
}

Nie dodano jeszcze komentarza, rozpocznij dyskusję pierwszy.

Dodaj komentarz