На форумі обговорюються лише питання, пов'язані з олімпіадою
Ви не зайшли.
Ну власне, про що я і говорив у одному з попередніх коментарів. Але LVV використовує ці елементи не як страховку від виходу за межі, а саме як "зайві" елементи і недолік мови.
Відредаговано Dim_ov (2011-11-20 12:09:24)
Поза форумом
Присяжнюк А.В. написав:
Наявність "зайвих" елементів у масиві говорить про достатньо високий рівень підготовленості і наявність певного "олімпіадного досвіду".
Подібні "штучки" з заведенням про всяк випадок ще кількох запасних елементів у масивах характерні лише тим, хто колись на оголошеннях масивів "впритик" обпікався кілька разів на інших задачах і тому цей елемент техніки програмування (резервування кількох зайвих елементів масиву) у них уже майже на підсвідомому рівні.
Ви безсумнівно маєте рацію. Але в даному випадку (я коментую лише свій стиль програмування) мій вибір продиктовано не резервуванням кількох зайвих елементів масиву про всяк випадок, а навмисним ігноруванням нульових індексів там, де це несуттєво, щоб не заплутатись самому i не заплутувати iнших.
Якщо використовувати стиль
int a[201];
for (i=1; i<201; i++) a[i]=i;
то все стає більш-меньш зрозумілим, після короткого пояснення "ігнорується нульовий індекс масиву"
А для пояснення рядків
int a[200];
for (i=0; i<200; i++) a[i]=i;
потрібно щось у стилі Х.Дейтела: " Важно отметить различие между «седьмым элементом массива» и «элементом массива семь». Поскольку индексы массива начинаются с 0, «седьмой элемент массива»
имеет индекс шесть, тогда как «элемент массива семь» имеет индекс 7 и на самом
деле является восьмым элементом массива."
Відредаговано LVV (2011-11-20 15:02:39)
Поза форумом
Dim_ov написав:
Ну власне, про що я і говорив у одному з попередніх коментарів. Але LVV використовує ці елементи не як страховку від виходу за межі, а саме як "зайві" елементи і недолік мови.
саме так
Поза форумом
А чому ніхто не помітив моєї репліки стосовно обмеження верхніх індексів масиву.
Чомусь усі (поправте, коли помиляюсь) використовують статичні масиви, де визначені максимальні (продиктовані умовою задачі) індекси масиву.
Питання до журі і не тільки:
(вибачте, якщо наївні)
що за обмеження по пам'яті використовуються на деяких олімпіадах з програмування? Це стосується об'єму програмного коду? Чи об'єму .ехе файлу? Чи пам'яті, яка резервується самою програмою під час її виконання?
Чому тут, на NetOI олімпіаді таких обмежень немає?
Поза форумом
Обмеження стосуються об’єму пам’яті, який прграма просить під час виконання.
По моєму, на НетОІ з обмеженнями на пам’ять поступають себе так-само, як і з обмеженнями на час - встановлюють у кілька разів більшим, ніж той, що використовує "найекономніша" правильна програма. Але можу помилятися.
Поза форумом