3 / 3
Oct 2015

Sorki za taki temat ale zawsze chciałem taki napisać wink
Mam kilka pytanek. Nie miałem pojęcia gdzie je wstawić więc piszę tu sr.
1.Czy funkcje w cpp przyspieszają program (inne od main())? Dlaczego? //Pytam bo jak pisałem w php to funkcji jak ognia unikałem ze względu na szybkość blush
2.Wbrew zasadzie "ucz się gdy potrzebujesz" muszę poznać sporą ilość szybkich algorytmów /*aktualnie moja wiedza jest dziurawa jak ser szwajcarski, do wszystkiego dochodziłem sam wink i nie znam praktycznie żadnej teorii w tym kierunku, a by się przydało */ . Zna ktoś miejsce w internetach gdzie są w miarę normalnie opisane?// Jeśli tak to szykuje się spora lektura.
3.Przy niektórych zadaniach gdzie ja uzyskuję czasy około 1s, niektórzy uzyskują czas 0. Zauważyłem że te przykłady zajmują więcej pamięci. Czy ludzie którzy to czynią używają czegoś jeszcze poza fast i/o, może działają bezpośrednio na bitach smile ?

  • created

    Oct '15
  • last reply

    Oct '15
  • 2

    replies

  • 710

    views

  • 2

    users

  • 1

    like

  • 2

    links

A powiedz, dlaczego tak bardzo zależy Ci na szybkośći?
Już dawno minęły czasy, gdy godzina [a pewnie nawet sekunda] pracy komputera warta była nieowybrażalną kwotę - była wielokrotnie cenniejsz niż czas pracy programisty-informatyka. Dziś sytuacja jest odwrotna, to cena czasu pracy programisty jest wielokrotnie wyższa, a czas procesora ciągle maleje. Jeżeli tak, to jak najbardziej funkcje, struktury, klasy, programowanie obiektowe i śledzenie wszelkich nowości ułatwiających programowanie [może nie są konieczne na SPOJ'u, ale świat się na nim nie kończy] - c++ > c++14: STL, BOOST, .... funkcja lambda, deklaracje auto, wskażniki automagiczne, ....

AD 1
Pisanie kodu na pewno tak, chociaż wywołanie funkcji, to jakiś mały narzut czasu[mikroskopijny?] W kodzie jednak najczęściej są inne wąskie gardła spowalniające szybkość działania: niewłaściwy algorytm, niewłaściwie dobrane typy zmiennych, czy nawet źle napisany kod.

AD 2
Niestety, nie znam. Najlepsze są dobre książki.
ALe są przecież google, wikipedia i ciągle pojawia się coś nowego.
Np [stare] wink
http://pl.spoj.com/embed/info/5
http://pl.spoj.com/embed/links/3
Lektury nie zabraknie.

AD 3
Pewnie wiedzą co czynią. Wykorzystują algorytmy, kiedy trzeba, a ad hoc gdy zadanie tego nie wymaga, ale też wiedzą kiedy warto użyć fast i/o, a kiedy slow, kiedy działać na bitach, a kiedy na bajtach czy strukturach.

Dlaczego zależy mi na na szybkości?
W sumie nie wiem, z natury szukam niestandardowych rozwiązań, czegoś co przeciętnego Kowalskiego nie zachęci. Od czasu gdy opanowałem HTML szukałem sposobów na skrócenie kodu, przyspieszenie jego działania, zmniejszenie zużycia maszyny cokolwiek. Mam frajdę z tego że przyspieszyłem kod, zwłaszcza przy nowym języku, póki mam czas to korzystam wink
Dzięki też za linki.

Suggested Topics

Topic Category Replies Views Activity
System SPOJ 1 199 Jan 30
System SPOJ 2 144 Apr 15

Want to read more? Browse other topics in System SPOJ or view latest topics.