2016 m. birželio 21 d., antradienis

2015/2016 m.m. ir veiklos apžvalga

Universitete mokiausi abudu semestrus. Programavau pagrinde Perl'u. Pirmąjį - turėjau keletą dalykų, kuriuos reikėdavo daug programuoti. Antrąjį - praktikavausi projekte.
Tarp kitko paspręsdavau Codeforces ir OpenCup kontestus.

Be to nuo praeitos iki šios vasaros pagrinde sėdžiu namuose ant Linux'ų. Įsirašęs Linux Mintus. Lievi, bet kažkaip pakenčiu.

Pirmąjį semestrą teko pasipraktikuoti su Perl'u redaguotis/tvarkytis duomenis. Dar teko programuoti įvairius algoritmus. Intergravimas, Bezier kreivės - šitus rašiau C kalba.
Viename iš dalykų, reikėjo programas rašyti kruopščiai skaitomas ir kruopščiai išvedančias išvestį. Taigi, teko išsiugdyti daugiau disciplinos skaitomume. Dalyko metu parašiau: labirinto perėjimą į plotį ir į gylį, Hanojaus bokštą rekursyviai ir iteratyviai, viena kitos nepuolančių šachmatų valdovių uždavinį, BC ir FC (backward ir forward chaining'us). Tarp kitko sau pasirašiau ir Sudoku žaidimo sprendiklį. Taigi semestro metu, nemažai draugystės su "backtracking'u". Apskritai, rekursija, backtraking'as ir chaining'ai - labai įdomios loginės temos.

Vieno dalyko metu teko atlikti grupinį darbą - projektuoti sistemą, bet jos neprogramuoti. Turėjo gautis visoks tekstas ir lentelės bei schemos, o kadangi dirbdavome ne vien susirinkę biblėj, bet ir iš namų, tai draugai pamokė naudotis GitHub'u ir naudojomės juo.
Kai susipažinau, praėjau jį naudoti ir visiems kitiems dalykams, kaip versijavimo sistemą. Netgi savo spręstus uždavinius iš CodeEval sistemos, persikėliau į GitHub'ą.

Pavasarį, kažką veikiau projekte. Turėjau gan įdomią temą: reikėjo skenuotuose tekstuose išskirti pastraipų, paveikslėlių, ir kitų loginių atskirų blokų, koordinates. Pavyko parašyti programą, kuri užlieja tarpus tarp gretimų pikselių, jeigu jis neviršija N. Apdoroja po eilutę. Taigi, norint užlieti ir horizontaliai ir vertikaliai, tekdavo paversti paveikslėlį ant šono.
Tam reikalui pasimokiau Netpbm paketo programų.
Vėliau užlietus blokus reikėdavo surasti. Taigi paeilučiui eidavau iš viršaus žemyn ir prijungdavau besiliečiančias pikselių eilutes prie jau esančių (kaip prie blokų), kartais apsijungiant fragmentams į vieną, arba susikuriant naujam.
Dar aprašiau opciją - apjungti tokius fragmentus, jeigu juos apimantieji minimalieji stačiakampiai persikloja.

Tiek Codeforces, tiek OpenCup'e pastaraisisi metais sunkiau gaudavosi spręsti.

Apskritai programuoti pasidarė sunku, blogesnis įsiminimas, dažnas nuovargis, ir kitos mintys. Dėl ko apatijos ir pnš. įtakoje krenta imlumas, galimybės. Univere prisidirbau skolų. Tačiau patenkintas, kad kažkiek visgi programuoju, ir kažkiek pavyksta.

Komentarų nėra:

Rašyti komentarą