Большие массивы со значениями по умолчанию в файле данных Minizinc?

Как смоделировать большой массив, например. "массив [1..10000000] int: A;" который имеет множество 0 в качестве значения по умолчанию. Есть ли способ указать значение «по умолчанию» для MiniZinc, чтобы уменьшить размер файла данных?


person Umar    schedule 15.10.2015    source источник


Ответы (1)


MiniZinc — это декларативный язык, в котором вы не можете изменить значение присваиваемой переменной. Это делает вопрос немного странным, нет необходимости в значении по умолчанию, поскольку значение переменной нельзя изменить.

Я бы использовал понимание массива [if i == 3 then i else 0 endif | i in 1..10000000] и переключал условие и результат оператора if в зависимости от того, что вам нужно.

Может ли быть другой способ представления массива? Массив, который в основном пуст, звучит не очень эффективно.

person Kobbe    schedule 01.01.2016