21.01.2009, 17:47 | #1 (permalink) |
Member
Регистрация: 24.12.2008
Сообщений: 419
Записей в дневнике: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 1311
|
Пара задач с олимпиады
1) какое из чисел является логическим продолжением ряда 2,3,7,25,121? (варианты ответов: 252, 721, 158, 1021, 3175) 2) дан фрагмент программы на Паскале: read(n,m); sum:=0; for i:=1 to n do for j:=1 to m do for x:=i to n do for v:=j to m do sum:=sum+1; writeln(sum); Этот фрагмент можно записать одним присваиванием: sum:=f(n,m) Какой вид имеет функция f(n,m)? ЗЫ: где-то на форуме я видела тему с олимпиадными задачами, но найти ее не могу. |
21.01.2009, 17:47 | |
Helpmaster
Member
Регистрация: 08.03.2016
Сообщений: 0
|
Имеет смысл пролистать аналогичные посты Витая пара Пара общих вопросов Талисманы Олимпиады 2014 Пара вопросов по аудио Пара вопросов по TDA1552Q Пара вопросов по усилителю. |
21.01.2009, 21:41 | #2 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Так, ну с первой задачей ясно - ответ 721. Значения чисел определяются, как k!+1, где k = 1, 2, 3, 4, 5; k = 6 дает 721.
Со второй - будем думать. |
21.01.2009, 22:11 | #3 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Ага, ну вот и вторая. Ответ:
f(n,m) = n*(n+1)*m*(m+1)/4 Рассуждаем так: Если бы было for i:=1 to n do for j:=1 to m do sum:=sum+1; то ответ, очевидно, был бы m*n. Если бы было for i:=1 to n do for x:=i to n do sum:=sum+1; то ответ был бы суммой n членов арифметической прогрессии с а(1) = 1, а(n) = n и разностью 1, то есть (1+n)*n/2. Теперь замечаем, что циклы можно переставить местами, чтобы упорядочить: for i:=1 to n do for x:=i to n do for j:=1 to m do for v:=j to m do sum:=sum+1; поскольку суммирования по парам индексов (i,x) и (j,v) взаимно независимы, то есть результат, как и в первом упрощении, есть произведение результатов по каждой паре. Отсюда и получается произведение двух сумм арифметических прогрессий. P.S. На всякий случай - проверено. |
21.01.2009, 22:47 | #4 (permalink) |
Member
Регистрация: 25.04.2008
Сообщений: 238
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Задачи какие-то математические, а не "информатические"
Хотите информатическую? Поменять местами значение 2 переменных, не используя дополнительную переменную или указатели |
21.01.2009, 23:01 | #5 (permalink) |
Member
Регистрация: 24.12.2008
Сообщений: 419
Записей в дневнике: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 1311
|
Спасибо за ответы!
Vladimir_S, спасибо огромное! Darkcosinus, над задачей подумаю завтра. |
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
21.01.2009, 23:08 | #6 (permalink) |
Специалист
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
|
Элементарно, Ватсон :
Read(x, y) y:=x+y; x:=y-2*x; x:=(x+y)/2; y:=y-x; Всё! Ох, сейчас мне опять будет выдано за неоптимизацию! |
21.01.2009, 23:19 | #7 (permalink) |
Member
Регистрация: 24.12.2008
Сообщений: 419
Записей в дневнике: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 1311
|
Ой! Нам что-то такое на курсах рассказывали, только в общем виде, без Паскаля.
И что значит "неоптимизация"? Последний раз редактировалось ummasha; 21.01.2009 в 23:29 |
22.01.2009, 00:08 | #9 (permalink) |
Member
Регистрация: 25.04.2008
Сообщений: 238
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
|
Использование неоптимального алгоритма. Ну к примеру если есть задача поиска простых чисел в диапазоне от 1 до N, и решается она перебором всех чисел от 1 до N - это алгоритм верный, но не оптимальный, т.к. можно сделать перебор только нечётных чисел, т.к. чётные простыми по определению не являются (ну, кроме 2).
Или сортировка массива методом пузырька - метод правильный, но не оптимальный. В оптимальном сам чёрт ногу сломит В общем это всё относится к другой теме, где мы разговаривали про задачу как раз на оптимальный алгоритм |
22.01.2009, 07:35 | #10 (permalink) |
Member
Регистрация: 24.12.2008
Сообщений: 419
Записей в дневнике: 4
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 1311
|
А можно ссылку на эту тему?
|
Ads | |
Member
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
|
|
|