spawly / hw_sample

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

#Рекомендации по выполнению домашниего задания по курсу "Алгоритмы и структуры данных"

Внимание, следование этому руководству позволит быстрее справиться с заданиями.

##1. Стиль.

##2. Самостоятельная проверка решения.

##3. Порядок решения задач ###3.1 Общий алгоритм решения

  • Решение каждой задачи должно быть продуктом собственного труда каждого учащегося. Запрещается использовать листинги программ, взятых из каких либо источников, кроме явно указанных семинаристом или лектором. Если вы используете заготовку кода с семинара, необходимо разобраться как она работает. Оптимальным вариантом будет написание всего кода самостоятельно.
  • Придумайте какие структуры данных и алгоритмы вы будете использовать для решения задачи. Какие их свойства являются коючевыми?
  • Сделайте асимптотические оценки времени выполнения и затрат памяти. Убедитесь, что они удовлетворяют условию задачи.
  • Напишите письмо преподавателю. В письме опишите решение в нескольких предложениях на русском языке. Описание не должно быть программой, а скорее отвечать на вопрос: "как вы решите задачу?" Приведите оценки времени/памяти.
  • После одобрания решения семинаристом, приступайте к реализации алгоритма на C++. Придерживайтесь рекомендованного стиля кодирования и напишите собственные тесты для проверки решения.
  • Убедитесь, что программа компилируется и написанные вами тесты проходят.
  • Сдайте задачу в систему проверки ejudge.
  • Сдайте задачу семинаристу очно или по почте.

###3.2 Отправка решения на проверку семинаристу: По договоренности с преподавателем, задачи можно сдавать лично после семинара или дистанционно по почте. Для того чтобы задача была зачтена, она должна пройти тесты в автоматической системе проверки и получить вердикт "ОК". Начинайте тему письма с префикса "TP". Указывайте в теме письма свои Фамилию Имя, номер задания, номер задачи, номер варианта. Например так: "TP: Иванов Иван m1 p4 v2" Отправляйте все письма по одной задаче в одной цепочке писем.

Разные задачи, отправляйте в разных письмах.

В письме приведите описание решения по пунктам из 3.1, приведите оценки сложности. Приведите доказательство корректности вашего алгоритма, если это не очевидно по построению. Код присылать не нужно. Он доступен преподавателю в системе тестирования. Достаточно указать run-id решения, сданного в систему тестирования.

##4. Успевайте вовремя Дедлайн по каждому модулю прописывается в задании. Обычно это дата последнего семинара перед РК + 2 недели. Т.е. начальные задачи модуля можно решать 4 недели, последние 2 недели. Р После дедлайна задачи не принимаются.

Рекомендуется приступать к решению задачи не позднее 1 недели после семинара, на котором рассказывался соотвествующий материал.

About


Languages

Language:Shell 50.1%Language:C++ 43.5%Language:Makefile 6.4%