Форум » Символьные строки и последовательности » Оформление №27 » Ответить

Оформление №27

mirage: Здравствуйте! Подскажите, пожалуйста: "На вход подается сначала количество пар, затем сами пары." Пример входных данных: 6 5 4 3 2 ... Можно ли в данном случае считывать пары так: readln(a);readln(b) ? Или обязательно использовать строки, а затем переводить в числа и пр. ? В условии не сказано, что подаётся строками, но пример, как мне кажется, это подразумевает.

Ответов - 5

Поляков: mirage пишет: Можно ли в данном случае считывать пары так: readln(a);readln(b) ? Можно так: readln(a, b); Вообще, считывать можно, как угодно, хоть посимвольно.

mirage: Подскажите, пожалуйста, учитываются ли пробелы при оценивании по критерию "эффективно по памяти". Написал программу, чтобы было понятнее, оформил всё "лесенкой". Программа заняла 1400 байт. Без отступов - 750 байт. Как, если это не тайна, выставляется оценка по этому критерию? Как подсчитывается кол-во символов? Вообще программа проверяется на пк или на бумаге? А эффективность по времени? На сайте РешуЕГЭ есть задание, при решении которого используются два массива по 100 элементов и по-другому там не решить (м.б. можно и одним на 100 обойтись, но в том решении использованы 2). В какой момент программа становится неэффективной по памяти и по времени в таком случае? Вложенных циклов нет, просто элементы запоминаются в массив. Резервируется ли память для массива и переменных? Я пробовал использовать типы longint и word. При сохранении программы с одним типом, а потом с другим разницы по памяти не увидел. Если память не резервируется, то во время выполнения она должна увеличиваться, ведь мы данные запоминаем. Тогда как узнать используемую память(будет ли она разной при сохранении и при выполнении программы)? Стоит ли обнулять все переменные вначале, если в PascalABC.NET это делается автоматически? Ведь каждая буква увеличивает объём памяти. Достаточно указать перед программой "PascalABC.NET" или нужна ещё и версия? Извините, что много вопросов)

Поляков: mirage пишет: учитываются ли пробелы при оценивании по критерию "эффективно по памяти". Нет. Учитываются массивы. Программа в большинстве задач эффективна по памяти, если размер массивов не зависит от количества входных значений. В какой момент программа становится неэффективной по памяти и по времени в таком случае? Обычно об этом пишут в условии. Чаще всего неэффективно O(N^2) по времени (двойной цикл из N шагов) и O(N) по памяти (когда все данные предварительно закачивают в массив).Стоит ли обнулять все переменные вначале, если в PascalABC.NET это делается автоматически? Стоит. Если хотите меньше проблем. Достаточно указать перед программой "PascalABC.NET" Если используете возможности версии 3, это обязательно нужно указать.

nikson: Подскажите, может ли ребенок вместо заявленного формата вывода ответа, например: "Такой пары нет", вывести ответ "NO" или "Takoi pary net"? Будет ли это ошибкой?

Поляков: nikson пишет: Подскажите, может ли ребенок вместо заявленного формата вывода ответа, например: "Такой пары нет", вывести ответ "NO" или "Takoi pary net"? Будет ли это ошибкой? Думаю, что этот вопрос стоит задавать представителям ФИПИ. В критериях оценивания я не видел разбора такой ситуации. По сути это, конечно, ошибкой не является.



полная версия страницы