Всмысле создавать новый список значений?
У меня значения хранятся в массиве значений, где индекс значения вершины
равен самой вершине, т. е. на первом шаге: valuesTable[0] == 3
А как предлагаете список составить? Нумерация вершин начинается с нуля, 0-вая (3) смежна с 1 (2), и со 2 (-7), 1-ая смежна с 0 и со 2 , 2-ая смежна с 0, 1, и 3 (-13)
Ладно, не одним программированием едины, в тестовой сессии можно и так, регламент еще почитаю.
Меня смутило то, что указаны конкретные компиляторы и их флаги.
Задачи там конечно, не типовые, просто меня не туда повело, просто не имея достаточного опыта и знаний,
подумал, что это как-то связано с шахматными ботами.
Это логично, но я готовлюсь к олимпиаде, и у меня есть время сейчас, чтобы отработать алгоритм, чтобы там потом попусту не тратить время на перебор вариантов с листочком.
Кроме выделения ОЗУ, new/delete, в отличии от malloc/free вызывают конструктор типа для выделенной памяти (new) и деструктор типа перед освобождением памяти (delete).
Хотя для тривиальных типов это не так важно, но знать принцип работы все же нужно.
Понял. В первый раз сталкиваюсь с подобного рода заданиями, и на то, чтобы понять эту схему, ушло два дня.
Логические операции привык использовать только в условиях.
Все понятно, по полочкам разложили.
при вызове функции сложения (+) под капотом вызываются разные команды процессора - для целых и дробных форматов.
Вопрос был задан в теге ООП, а значит нужно отвечать в контексте ООП, а не машинного кода.
ad-hoc полиморфизм, например в C++, обычно реализуется компилятором на основе шаблонов, ADL (выбор функции по типам параметров), манглирования имен.
граф для этого перестраивать не требуется.