На форумі обговорюються лише питання, пов'язані з олімпіадою
Ви не зайшли.
За умовою задачі: N=2k+1.
А за технічною умовою сказано лише, що "...програма повинна прочитати з клавіатури число N (3≤N<1000)..."
Питання:
Ці умови доповнюють одна одну?
Вважати, що при тестуванні вводитимуться лише коректні (непарні) значення N, чи система задаватиме змінній N і парні значення також?
Відредаговано LVV (2011-11-26 06:35:26)
Поза форумом
Хватит условия выкручивать,
LVV написав:
За умовою задачі: N=2k+1.
Поза форумом
Unknown написав:
Хватит условия выкручивать,
LVV написав:
За умовою задачі: N=2k+1.
Не бачу причини Вашої роздратованості.
Зрозуміло, що умови повинні доповнювати одна одну, а не дублювати. Але мало що там може бути на тестах...
Мене лише цікавить, чи може під час онлайн-перевірки (тестування) змінна N набувати парних значень, на які програма повинна реагувати виводом "-1".
От і все.
Відредаговано LVV (2011-11-26 07:49:35)
Поза форумом
Тогда, по-вашему в каждом условии нужно напоминать участникам, что мы пишем только на С++ Pascal Basic Delphi C#, что число вводится в десятичной системе счисления, что мы вообще находимся на сайте интернет-олимпиады, можно еще погоду писать. Один раз написали условие, что не понятного..
Відредаговано Unknown (2011-11-26 08:39:00)
Поза форумом
Якщо ви, шановний Unknown, не автор цієї задачі і не член журі, то мене Ваша думка не цікавить, бо Ви не можете дати відповідь на цілком конкретне моє питання: "чи вводитиме тестуюча система парні значення N".
Поза форумом
Я же ответил, что нет
Кстати, погода в Украине сегодня дождливая.
Поза форумом
А у нас солнечно :) +2 По Цельсию
Но, на всякий случай я таки предусмотрю варианты, когда N=2k, а то Ваш статус на форуме "новий користувач" не даёт нкаких гарантий :) К кому потом аппелировать, если при вводе N=4 выдаст, скажем, 3.23607 вместо "-1".....
Відредаговано LVV (2011-11-26 09:14:15)
Поза форумом
"Знайдіть послідовність, що містить N послідовних натуральних чисел (N=2k+1)"
Не сложно доказать , что не существует N=2k последовательных натуральных чисел, таких что сумма квадратов и т.д. первой части равнялась сумме второй. Это очевидно.
Відредаговано Unknown (2011-11-26 09:15:12)
Поза форумом
Дело не в доказательстве, а в реакции программы на различные данные при вводе. Например, в задаче Calculation (І тур) было сказано "гарантується, що розв'язок існує", то-есть гарантировался правильный перевод числа в другую систему счисления и существование решения задачи, А в этой задаче, хоть вроде бы всё предельно ясно и очевидно, но в техническом условии указано, что выводить, если "не існує жодного способу". А ведь "не існує жодного способу" и при N=2k
Возможно, я и не прав, (в условии + техническом условии всё исчерпывающе ясно), просто лишний раз хотел убедиться, что "не існує жодного способу" не подразумевает N=2k
Автора задачи, прошу не нервничать по этому поводу.
Відредаговано LVV (2011-11-26 09:57:41)
Поза форумом
LVV написав:
За умовою задачі: N=2k+1.
А за технічною умовою сказано лише, що "...програма повинна прочитати з клавіатури число N (3≤N<1000)..."
Питання:
Ці умови доповнюють одна одну?
Вважати, що при тестуванні вводитимуться лише коректні (непарні) значення N, чи система задаватиме змінній N і парні значення також?
За умовами проведення олімпіад вхідні дані завжди коректні. - Автор задачі.
Відредаговано Боднар В.Г. (2011-11-26 10:46:30)
Поза форумом
Думаю уже можно выложить решение задачи.
Вот
#include <iostream> using namespace std; int main() { int n; cin>>n; cout<<n*(n-1)/2<<endl; return 0; }
Идея такова:
Пишем равенство сумма i=от 0 до k (a+i)^2(в квадрате) = сумма i=от k до 2k (a+i)^2
переносим, упрощаем, получаем квадратное уравнение относительно а (ответ к задаче) и его корни или -k, или n*(n-1)/2;
-k не подходит, значит ответ нашли
Поза форумом