NOVINKA! E-learningové kurzy umělé inteligence. Nyní AI za nejlepší ceny. Zjisti více:
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Soutěž: Machr na algoritmy - Doplňování posloupností

Soutěž již skončila

Zadání

Letní soutěž skončila, tak se zase pustíme do těch menších ;) A začneme hraním s posloupnostmi. Vaším úkolem bude napsat konzolovou aplikaci, která dostane prvních 8 členů posloupnosti a vypíše 8 dalších.
Ukázkový vstup (a<sub>n+1</sub> = an * 2 + 2):

1,4,10,22,46,94,190,382

Výstup:

766,1534,3070,6142,12286,24574,49150,98302

Úkolem programu je tedy odhadnout o jakou posloupnost se jedná a určit jak pokračuje.
Co se týče vstupu, budete posloupnosti číst ze souboru, který bude zadán při spuštění. Vstupní soubor bude obsahovat 200 řádek - na každé řádce bude jedna posloupnost složená z celých čísel oddělených čárkami.
Pokračování posloupností budete psát stejným způsobem do konzole na jednotlivé řádky.

Povolené jazyky: C, C++, C#, Java
Pokud budete chtít použít jiný (nebo budete mít nějaký dotaz k soutěži), zeptejte se v komentářích.

Výhra

Vítěz dostane placku Machr a ocenění do portfolia.

Výhra

Výsledky

Jméno bodů Řešení ( Stáhnout vše )
coells 99 Stáhnout řešení
Martin Dráb 95 Stáhnout řešení
Martin Vejvoda 80 Stáhnout řešení
Gramli 66 Stáhnout řešení
D0ll0k 61 Stáhnout řešení
Aktivity
Avatar
Odpovídá na Zdeněk Pavlátka
Martin Vejvoda:9.11.2016 13:31

Díky za machra a gratuluju vítězům. Kouknul jsem na jejich řešení a bohužel moje znalosti C++, Pythonu a matiky nejsou na dostatečný úrovni, abych je pochopil :-S Za to načítání souboru se omlouvám, měl jsem to v kódu, abych nemusel pořád vybírat soubor a pak jsem to zapomněl předělat :) Ale chci se tě ještě zeptat, nemohl bys zveřejnit soubor, kterým jsi to testoval?

Editováno 9.11.2016 13:33
Odpovědět
9.11.2016 13:31
matika > informatika
Avatar
Odpovídá na Martin Vejvoda
Zdeněk Pavlátka:9.11.2016 16:01

Vstupní soubory byly náhodně generovány, každý program byl testován 10× a výsledky byly zprůměrovány. Jestli chceš, můžu sem večer dát ukázku.

Nahoru Odpovědět
9.11.2016 16:01
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Odpovídá na Zdeněk Pavlátka
Martin Vejvoda:9.11.2016 17:25

Jo takhle, já jsem myslel, že jsi měl soubor, který byl pro všechny stejný. Ale ukázku bys sem dát mohl (pokud by ti to nevadilo), celkem by mě to zajímalo

Nahoru Odpovědět
9.11.2016 17:25
matika > informatika
Avatar
Nahoru Odpovědět
9.11.2016 19:38
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
Odpovídá na coells
Ondřej Krsička:9.11.2016 20:23

Ta lineární regrese se učí na gymplu, nebo až na VŠ? :)

 
Nahoru Odpovědět
9.11.2016 20:23
Avatar
Martin Dráb
Tvůrce
Avatar
Odpovídá na Ondřej Krsička
Martin Dráb:9.11.2016 20:35

Možná bude někde ve statistice na střední, ale určitě ne všude. Myslím, že já se ji na gymplu neučil.

Ale Gaussova eliminace (řešení soustav lin. rovnic) se na gymplu (popř. SŠ) určitě probírá. Myslím ale, že se moc neukazuje, k čemu všemu je to dobré, snad mimo analytické geometrie.

Nahoru Odpovědět
9.11.2016 20:35
2 + 2 = 5 for extremely large values of 2
Avatar
coells
Tvůrce
Avatar
Odpovídá na Ondřej Krsička
coells:9.11.2016 21:03

Lineární regrese se dřív vyučovala ve statistice na Obchodní akademii, pak se od toho upustilo kvůli složitosti.
Já jsem z regrese použil jen metodu nejmenších čtverců, tu jsme se na gymplu učili včetně odvození.

Ovšem ta varianta, kterou jsem použil, se opravdu učí až na vysoké.
Na škole ses učil řešit soustavu rovnic pomocí dosazování nebo eliminace (to je Gaussovka, jak uvedl Martin).
Existuje ještě způsob, kdy si soustavu rovnic převedeš na jedinou kvadratickou rovnici a pak jí vyřešíš ve dvou krocích.
Tohle se ale učí až na magisterském studiu na vysoké.

 
Nahoru Odpovědět
9.11.2016 21:03
Avatar
Odpovídá na Martin Dráb
Luboš Běhounek Satik:10.11.2016 9:51

Asi se to dost liší - my gaussovku na střední (osmiletý gympl) neměli, ségra ji měla na čtyřletým gymplu ve druháku (chodila na jinej gympl).

Nahoru Odpovědět
10.11.2016 9:51
https://www.facebook.com/peasantsandcastles/
Avatar
Odpovídá na Martin Dráb
Zdeněk Pavlátka:10.11.2016 10:21

Já měl Gaussovku na gymplu "navíc" (když zbyl čas na konci roku) a ještě se jí učila jen jedna ze 3 skupin na matiku (+ se probírala v extra předmětu ve 4 ročníku - ten předmět byl jako příprava na VŠ)

Nahoru Odpovědět
10.11.2016 10:21
Kolik jazyků umíš, tolikrát jsi programátor.
Avatar
krepsy3
Tvůrce
Avatar
krepsy3:10.11.2016 11:00

U nás na gymplu teda čas navíc v matice rozhodně nemáme, třídní (matikářka) nám často říká, že kvůli zvládnutí maturity to s maturanty dojíždí po pátečních ránech, a ještě před maturitou vždycky chytá nervy (je trochu cholerička) že se sami derivovat nenaučí a že jí odpadá moc hodin. Teď jsem ve třeťáku a berem analytiku (geometrii - vektory atd.). Tak jsem zvědavej, protože řešit soustavy lineárních rovnic jsme už měli, ale fakt neznám Gaussovu eliminaci ani lineární regresi.

Nedovedu si představit algoritmické řešení tohoto úkolu. Asi bych to řešil tak, že bych postupně zkoušel všechny různé druhy posloupností s různými koeficienty. Plus samozřejmě prvočíselné řady. Ale bohužel teď na to nemám čas, momentálně jsem rád že stíhám školu :D

Nahoru Odpovědět
10.11.2016 11:00
Programátor je stroj k převodu kávy na kód.
Avatar
Martin Dráb
Tvůrce
Avatar
Odpovídá na krepsy3
Martin Dráb:10.11.2016 13:44

Na některých gymnáziích (popř. asi i jiných druzích středních škol) si ve předposledním či posledním ročníku můžeš vybrat tzv. semináře – předměty, které nějaké téma pokrývají více do hloubky. Já jsem takhle navštěvoval přídavnou matiku, kde jsme se učili řešit 1001 různých druhů rovnic a nerovnic, limit a snad i integrálů.

Nahoru Odpovědět
10.11.2016 13:44
2 + 2 = 5 for extremely large values of 2
Avatar
krepsy3
Tvůrce
Avatar
Odpovídá na Martin Dráb
krepsy3:10.11.2016 15:11

Já vedle matiky navštěvuju deskriptivu a právě na aplikovanou matiku, kde probíráme to, co se do hodin matiky nevejde. To jsou klasické semináře - deskriptiva je třeba na dva roky, takže si ji užiju i ve čtvrťáku. Jak jsem psal, jsem ve třeťáku.

Nahoru Odpovědět
10.11.2016 15:11
Programátor je stroj k převodu kávy na kód.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 12 zpráv z 62.