Я хочу отметить, что по-моему изворачиваться и отписываться в учёбе не есть плохо, только если понимать то, что и как нужно сделать, но чего делать не хочется и не имеет особого смысла. Точнее не изворачиваться, а просто не делать, потому что это пустая трата времени и сил. А вот если ребёнок даже и не пытается понять, а старается просто «заработать оценки» списывая, скрывая оценки от родителей, зубря вместо понимания и т. д., то это уже плохо. А таких детей, к сожалению, в моей прошлой школе было подавляющее большинство.
Видите ли, тут я должен отметить, что в отличии от вас и, предположительно, большинства людей, я не считаю какого-нибудь «супер-бизнесмена» успешнее человека, занимающегося творческой или научной деятельностью. На счёт того, что среди бизнесменов много бывших троечников и даже двоечников, я лично и без исследований не сомневаюсь. Обычно, эти «успешные люди в бизнесе» просто неплохо говорят и управляют.
Тут почти в тему будет цитата Жореса Алфёрова (цитата не точная, пишу по памяти с 1-го сентября): «Мне любой младший научный сотрудник, сделавший какое-нибудь, даже маленькое открытие, а они всегда находятся, кажется важнее любого политика или президента любой страны».
Возможно я ошибаюсь, но мне кажется, что особой разницы между «XP» и деньгами для ученика начальной школы нет. Обычно дети в таком возрасте ещё мало самостоятельно оперировали с деньгами.
И вообще, я имел в виду, что базироваться на оценках, как на главном результате учебной деятельности ребёнка, не стоит. По мне так лучше найти хобби, развивающие мозг (ну, или спорт), что кажется ребенку «крутым» (математика, оригами, музыка, прога, живопись, и т. д.), а не играть в «дворфа 4 уровня», полезнее будет.
P. S. Математика и прога, наверно, скорее уже к средней школе относится. Туда ещё можно что-нибудь вроде радиоконструкторов отнести.
Мне всегда идея давать деньги за учёбу казалось ужасной. Во-первых, потому что если школьник не хочет учится, но введена такая система, то он не будет получать удовольствия от учёбы и будет стараться изворачиваться и отписываться, а не учится. Ну и во-вторых, потому что оценки, в действительности, не самое главное в учёбе, по-моему важнее найти что-нибудь «своё», вот как я, например, олимпиадное программирование.
Не путайте условие и состояние динамики. Состояние не обязательно должно быть прямо ответом на задачу — в моем состоянии это сообщения ровно за j нажатий, так что ответ будет суммой всех состояний. Если бы состояние было такое, как Вы описали — «не больше j нажатий», то такой (как в статье) пересчёт бы не работал, ведь тогда бы мы посчитали некоторые сообщения несколько раз.
Как написали ниже, я решил задачу не оптимально, можно и одномерно решить.
В принципе да, хотя слово «фрактал», на мой взгляд, тут не самое уместное. А ещё бывают всякие интересные случаи, например, когда одна задача решается с помощью значений состояний другой задачи, которая в свою очередь, основывается на значениях первой — такая запутанная динамика. Сейчас уже пример не вспомню, но такое действительно иногда встречается.
Любая динамика определяется рекурсивно — без этого нельзя свести задачу к меньшим подзадачам. Если Вы имели в виду это, то да, но реализация рекурсивной функцией обязательна только если порядок обхода был ленивым.
Да, это самый универсальный способ, но есть пара тонкостей. Во-первых, она практически всегда требует больше памяти и времени на вызов рекурсивной функции. Во-вторых, не получится оптимизировать память, забывая про предыдущие «слои» состояний. Про это написано в «Небольшие оптимизации».
До Вашего комментария я ни разу не слышал про этот интересный подраздел, так что если я и напишу статью, то только когда почитаю побольше и порешаю какие-нибудь задачки на него. Вроде здесь неплохо написано, но на английском. На русском ничего нашёл, так что вероятность того, что я напишу что-нибудь есть.
Как активный участник всевозможных кружков, школ, лагерей и олимпиад по спортивному программированию скажу, что если Вы хорошо разбираетесь в алгоритмах и можете их внятно рассказывать, то легко можно попасть, например, в Летнею Компьютерную Школу.
На счёт быть учителем в школе могу сказать, что тех, кто хочет учиться в обычных школах мало. Если Вы живёте в большом городе, то лучше попробовать попасть в физ.-мат. школу, там концентрация тянущихся к знаниям гораздо больше.
Судя по названию файла «delphi_hamilton.exe» и по скриншоту это всё-таки не «сравнение разных методов поиска кратчайшего пути в графе», а сравнение разных эвристических методов поиска гамильтонового цикла, видимо кратчайшего, да ещё и, кажется, в полном графе. Из вашего описания это не вполне ясно. Хотя да, задача звучит занимательно.
function g(v: integer): integer;
var
i: integer;
begin
result := 1;
if (vis2 and (1 shl (v - 1)) = 0) then
vis2 := vis2 + (1 shl (v - 1));
for i := 1 to n do
if (vis2 and (1 shl (i - 1)) = 0) and (matrix[v][i] = 1) then
result := result + g(i);
end;
function dfs(v, deep: integer): integer;
var
i, cnt, top: integer;
begin
vis := vis + (1 shl (v - 1));
result := get_ans_by_key(vis, v);
if result <> -1 then
exit;
result := deep;
global_ans := max(global_ans, result);
for i := 1 to n do
vis2[i] := vis[i];
cnt := g(v);
if deep + cnt - 1 > global_ans then begin
top := 0;
for i := 1 to n do
if (matrix[v][i] = 1) and (vis and (1 shl (i - 1)) = 0) then begin
inc(top);
res[top] := dfs2(i);
id[top] := i;
end;
if top <> 0 then begin
qsort(1, top);
for i := 1 to min(k, top) do
if (matrix[v][id[i]] = 1) and (vis and (1 shl (id[i] - 1)) = 0) then
result := max(result, dfs(id[i], deep + 1));
end;
end;
put_key(vis, v, result);
vis := vis - (1 shl (v - 1));
end;
Начнём с того, что всё что написано в статье — эвристики. Это значит, что точного доказательства, а значит и отношения оптимального времени работы dfs'а и bfs'а вам вряд ли кто-то скажет. Тем более, оно точно варьируется от задачи к задачи и от качества функции g(s).
На практике нужно экспериментировать с разными константами. Возможно есть какой-то научный подход, но я его не знаю.
0, аNone, так как это скорее отсутствие присутствия, чем присутствие отсутствия.Видите ли, тут я должен отметить, что в отличии от вас и, предположительно, большинства людей, я не считаю какого-нибудь «супер-бизнесмена» успешнее человека, занимающегося творческой или научной деятельностью. На счёт того, что среди бизнесменов много бывших троечников и даже двоечников, я лично и без исследований не сомневаюсь. Обычно, эти «успешные люди в бизнесе» просто неплохо говорят и управляют.
Тут почти в тему будет цитата Жореса Алфёрова (цитата не точная, пишу по памяти с 1-го сентября): «Мне любой младший научный сотрудник, сделавший какое-нибудь, даже маленькое открытие, а они всегда находятся, кажется важнее любого политика или президента любой страны».
И вообще, я имел в виду, что базироваться на оценках, как на главном результате учебной деятельности ребёнка, не стоит. По мне так лучше найти хобби, развивающие мозг (ну, или спорт), что кажется ребенку «крутым» (математика, оригами, музыка, прога, живопись, и т. д.), а не играть в «дворфа 4 уровня», полезнее будет.
P. S. Математика и прога, наверно, скорее уже к средней школе относится. Туда ещё можно что-нибудь вроде радиоконструкторов отнести.
jнажатий, так что ответ будет суммой всех состояний. Если бы состояние было такое, как Вы описали — «не больше j нажатий», то такой (как в статье) пересчёт бы не работал, ведь тогда бы мы посчитали некоторые сообщения несколько раз.Как написали ниже, я решил задачу не оптимально, можно и одномерно решить.
На счёт быть учителем в школе могу сказать, что тех, кто хочет учиться в обычных школах мало. Если Вы живёте в большом городе, то лучше попробовать попасть в физ.-мат. школу, там концентрация тянущихся к знаниям гораздо больше.
На практике нужно экспериментировать с разными константами. Возможно есть какой-то научный подход, но я его не знаю.