Автор Гілка: Google CodeJam 2017  (Прочитано 971 раз)

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3739
  • Карма: +9/-0
  • Програміст
Google CodeJam 2017
« : 2017-03-28 20:50:50 »
Закінчується реєстрація на чергове змагання з програмування від Ґуґла. Розклад: https://code.google.com/codejam/schedule .
Вболіваймо за українську команду разом!
[Fedora Linux]

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3739
  • Карма: +9/-0
  • Програміст
Re: Google CodeJam 2017
« Відповідей #1 : 2017-03-28 20:54:03 »
Я хочу знову взяти участь. Минуло разу я писав на bash ( https://www.go-hero.net/jam/11/name/vlisivka, http://linux.org.ua/index.php?topic=4793.0 ), цього року хочу писати на Rust: недавно його вивчив і хочу спробувати як це програмувати при таких обмеженнях на код, які накладає Rust.  [smiley=smile.gif]
« Змінено: 2017-03-28 20:57:28 від Володимир Лісівка »
[Fedora Linux]

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3739
  • Карма: +9/-0
  • Програміст
Re: Google CodeJam 2017
« Відповідей #2 : 2017-03-28 21:06:21 »
Мій рекорд на bash-і — 11-ть завдань,  досі не побитий. :-)  [smiley=hlop.gif]

Як тільки мій результат перевершать, я знову вступлю в бій на bash-і.  [smiley=mr47_04.gif]
« Змінено: 2017-03-28 21:09:16 від Володимир Лісівка »
[Fedora Linux]

Відсутній Re.

  • Загальний модератор
  • Літератор
  • *****
  • дописів: 1898
  • Карма: +1/-0
Re: Google CodeJam 2017
« Відповідей #3 : 2017-03-31 01:25:46 »
Rust: недавно його вивчив
Точно вивчили, саме в доконаній формі? :)

Теж дуже зацікавила концепція Rust. Недавно почав колупатись — буде видно, чи боротьба з вітряками компілятором хоч трохи вилікує мою криворукість.

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3739
  • Карма: +9/-0
  • Програміст
Re: Google CodeJam 2017
« Відповідей #4 : 2017-03-31 02:05:35 »
Rust: недавно його вивчив
Точно вивчили, саме в доконаній формі? :)

Теж дуже зацікавила концепція Rust. Недавно почав колупатись — буде видно, чи боротьба з вітряками компілятором хоч трохи вилікує мою криворукість.

Я зробив трохи більше пів-сотні різних примітивних тестових програмок на Rust-і ( http://exercism.io/vlisivka ), і основи опанував.

Якщо чесно, то ще не звик до концепцій Rust-а, напр. те що Rust не дозволяє змінювати об'єкт в кількох місцях змушує мене деколи замислюватися. Робота зі замиканнями трохи мене дивувала, доки я не зрозумів що замикання — це анонімний об'єкт а не просто функція. Ну і деколи просто сидиш, втикаєш в код, думаєш як правильно зробити.
« Змінено: 2017-03-31 04:08:51 від Володимир Лісівка »
[Fedora Linux]

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3739
  • Карма: +9/-0
  • Програміст
Re: Google CodeJam 2017
« Відповідей #5 : 2017-04-23 01:30:27 »
Пролечу я як фанера над Парижем на цих змаганнях.  [smiley=baby.gif] Кваліфікацію ледве проповз. В 1А не брав участі (бо було о 3-ій ночі), 1B — завалив, зробив тільки одне завдання, друге не встиг зробити для маленького набору даних, а для великого воно неправильний результат дає, і всеодно не попав би в першу тисячу. Треба все таки почитати книжку з алгоритмами і порозв'язувати якісь завдання, та і автоматизувати деякі речі теж треба, бо десь пів-години потратив на копіювати-вставити і т.п.

Rust себе добре показує — працює швидко, особливих проблем не створює (крім відомої проблеми з mut-ами, типу obj.share_and_modify(); obj.share(); навіть не компілюється через недосконалий компілятор). Подобається що на відміну від Сі чи Сі++ не падає в корку, але на Яві кодити було б швидше. Дуже не вистачає оператора yield для написання ітераторів, бо традиційний спосіб трохи довгий в реалізації і тому я його не використовую, бо один тільки ітератор займе половину часу.
[Fedora Linux]

Відсутній Володимир Лісівка

  • Адміністратор ЩОДО
  • Видавець
  • *****
  • дописів: 3739
  • Карма: +9/-0
  • Програміст
Re: Google CodeJam 2017
« Відповідей #6 : 2017-04-30 14:57:21 »
Пролетів. Спробував розв'язати перше і третє завдання. У першому десь помилився, і тести не пройшли. Третє ніби теж просте (провести оптимізацію ф-ї з багатьма параметрами, напр. через градієнтний спуск), але сама формула, яку треба спочатку вивести, мені в руки не далася — забувся теорію імовірностей та і сама формула складна, навіть якщо теорію імовірностей знаєш. :-( Потрібно порахувати імовірність випадання k чи більше орлів для n нечесних монет, кожна з яких має свою імовірність випадання орла, ну і потім максимізувати цю імовірність (чи мінімізувати 1-p) за u ходів.
[Fedora Linux]