|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
Наклёвывается алгоритм. Но формулы пока нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.01.2020, 19:55 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
Имя пользователя1 Aleksandr Sharahov Соколинский Борис, у меня получилось 8 Как делать? - написать программу ) Пример расписания выступлений фокусников с номерми 0..64 на 8 дней: 0,1,5,8,13,16,18,21,22,25,26,27,28,29,30,31,34,35,37,38,42,44,47,48,49,50,53,54,58,61,63,64 1,2,4,5,6,7,11,13,14,15,17,18,19,20,22,23,24,28,29,33,34,35,36,39,43,45,48,49,50,57,60,64 0,3,4,5,6,7,8,9,10,12,14,17,18,19,21,24,26,27,29,31,32,36,37,40,43,46,47,55,56,57,58,62,64 0,2,3,4,9,10,11,12,13,14,15,16,19,20,21,29,33,34,38,39,40,42,43,44,47,48,51,52,54,56,59,61 0,1,3,4,11,15,16,17,18,23,24,25,26,27,28,30,34,37,39,40,41,42,46,49,51,52,53,55,56,57,60,61,62 5,6,8,9,11,12,13,19,20,21,22,23,27,28,30,32,33,35,36,38,41,44,45,52,53,55,56,57,58,59,61,62,63 2,3,6,7,8,9,10,17,22,23,25,26,30,31,32,33,38,39,41,42,43,45,46,47,49,50,51,54,59,60,62,63,64 1,2,7,10,12,14,15,16,20,24,25,31,32,35,36,37,40,41,44,45,46,48,50,51,52,53,54,55,58,59,60,63 И почему меньше нельзя? Надо набрать 4160 ребер. Меньше, чем за 8 дней не получается. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 11:48 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
Aleksandr Sharahov, это шикарно. Но ты выдал нам нечитаемую колбасу из цифр. Неужели ты думаешь что кто-то будет их читать? В задаче нам интересен принцип. Доказательсто. И ответ. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 12:44 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
интересно, что за 8 дней на тех же условиях может выступить большее количество фокусников ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 12:45 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
mayton Aleksandr Sharahov, это шикарно. Но ты выдал нам нечитаемую колбасу из цифр. Неужели ты думаешь что кто-то будет их читать? В задаче нам интересен принцип. Доказательсто. И ответ. неужели ты думаешь, что никто не хочет получить удовольствие от самостоятельного решения задачи? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 12:48 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
Просто ты подразнил всех готовым ответом. А это - как-то не совсем честно. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 12:55 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
mayton Просто ты подразнил всех готовым ответом. А это - как-то не совсем честно. Ответ не единственный, их целое множество, вот еще один: 0,1,5,6,7,8,9,10,14,16,20,21,22,25,28,29,32,33,34,35,39,40,43,47,48,50,55,57,58,59,61,62,64 3,5,6,9,12,15,16,17,18,20,21,23,24,26,29,30,31,34,35,37,40,42,44,45,46,50,51,52,57,60,62,63,64 0,1,2,3,4,5,8,10,12,13,15,18,19,20,22,24,26,27,35,39,41,42,43,45,51,53,54,55,56,57,59,62,63 4,6,7,11,13,17,18,19,21,23,24,25,27,28,30,35,36,38,39,43,44,45,48,53,56,58,59,60,61,63,64 0,1,2,5,10,11,14,16,24,25,26,27,28,30,31,33,34,36,38,40,41,42,43,44,46,47,49,51,52,53,54,56,58,64 3,4,7,8,9,10,11,12,14,17,18,19,22,26,27,28,29,32,33,36,37,40,41,46,49,52,54,59,60,61,62 1,2,4,6,8,9,11,12,13,15,23,25,31,32,33,34,37,38,42,44,45,46,47,48,49,50,54,55,56,57,60,61 0,2,3,7,13,14,15,16,17,19,20,21,22,23,29,30,31,32,36,37,38,39,41,47,48,49,50,51,52,53,55,58,63 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 12:57 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
Автор пишет С доказательством минимальности. Я не проверял твои данные. Возможно они верные. Но ты просто подтвердил что твой код генерирует как минимум несколько решеней. Это хорошо. Но в качестве доказательства нужна либо формула с выводом либо пошагово алгоритм из которого станет всем очевидно что это и есть доказательство минимальности. Что поделаешь. Такие мы айтишники. Видим мир сквозь призму алгоритмов. Ну ... это не так уж плохо пока. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 15:34 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
mayton Автор пишет С доказательством минимальности. Я не проверял твои данные. Возможно они верные. Но ты просто подтвердил что твой код генерирует как минимум несколько решеней. Это хорошо. Но в качестве доказательства нужна либо формула с выводом либо пошагово алгоритм из которого станет всем очевидно что это и есть доказательство минимальности. Что поделаешь. Такие мы айтишники. Видим мир сквозь призму алгоритмов. Ну ... это не так уж плохо пока. Как айтишник айтишнику: Проверить правильность решения может каждый знакомый с компьютером, а доказательство минимальности я оставляю читателю. Возможно, кому-то будет интересно решить двойственную задачу: найти максимальное количество фокусников, выступающих на 8-дневном фестивале. Скажу сразу, что у меня есть решения этой задачи для нескольких N>65, но по сложившейся традиции нет доказательства максимальности )) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 16:07 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
Ох уж эти брутфорсеры) Здесь интересна простая идея, а не конкретное расписание выступлений. Различных расписаний так много, что ни одно из них не представляет ценности. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 19:19 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
Я с тобой согласен. Давай от индукции. 1 фокусник - лишено смысла. 2 - фокусника. 2 дня. Один выступает. Другой смотрит. Потом меняются. 3 - фокусника и т.д. Я расчитываю узреть формулу. Раньше чем достигнем числа 65. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 19:55 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
Решим общую задачу: если на конкурс приехали k фокусников, то какое минимальное число N дней понадобится? Нарисуем квадрат A размером kxk и в каждую ячейку запишем число 1..N по правилам: если A(i,j) = n, то i-й участник первый раз выступал для j-го зрителя в n-й день. Диагональ A(i,i) оставим пустой. Все ячейки, кроме диагональных, должны быть заполнены. Такж заметим, что если в строке i содержится число n, то это число не может содержаться в столбце i - выступающий не может быть зрителем в один и тот же день. И наоборот, если i-й столбец содержит n, то i-я строка n не содержит. Т.е., для любого i половина чисел из набора 1..N должна идти в i-ю строку, а оставшиеся - в i-й столбец. Осталось найти такое N, чтобы количество сочетаний из N по N/2 было >= k. Для k=65 минимальное N=8. C(8,4)=70. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 20:04 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
В треугольнике Паскаля число 70 стоит в диагонали. Это значит что оно не может соответствовать C(8,4) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 20:17 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
berlaga Решим общую задачу: если на конкурс приехали k фокусников, то какое минимальное число N дней понадобится? Нарисуем квадрат A размером kxk и в каждую ячейку запишем число 1..N по правилам: если A(i,j) = n, то i-й участник первый раз выступал для j-го зрителя в n-й день. Диагональ A(i,i) оставим пустой. Все ячейки, кроме диагональных, должны быть заполнены. Такж заметим, что если в строке i содержится число n, то это число не может содержаться в столбце i - выступающий не может быть зрителем в один и тот же день. И наоборот, если i-й столбец содержит n, то i-я строка n не содержит. Т.е., для любого i половина чисел из набора 1..N должна идти в i-ю строку, а оставшиеся - в i-й столбец. Осталось найти такое N, чтобы количество сочетаний из N по N/2 было >= k. Для k=65 минимальное N=8. C(8,4)=70. Я примерно так же решал: среди 8 дней есть 70 разных способов выбрать 4 дня для выступлений, то есть хватит на всех, при этом если рассмотреть любую пару участников, то найдётся день, когда один из них выступает, а другой смотрит, и наоборот. Минимальность для 65 доказывал по индукции. Если для М участников надо не меньше К дней, то для 2М+1 участников понадобится хотя бы К+1 дней, потому что после первого дня либо среди зрителей, либо среди выступающих будет по крайней мере М человек, которые не видели друг друга. Начинаем с 2 человек и 2 дней, и по этой формуле доходим до 8 дней для 65. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 20:27 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
mayton В треугольнике Паскаля число 70 стоит в диагонали. Это значит что оно не может соответствовать C(8,4) ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 20:29 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
daycount=8 mancount=70 Done 4830 1,2,7,9,10,13,16,17,18,19,20,21,24,26,28,30,31,33,34,35,36,43,46,47,51,53,55,57,60,61,62,64,67,68,69 2,3,4,5,7,11,14,17,18,21,22,24,26,27,32,36,37,40,42,44,47,49,50,51,53,54,56,57,58,59,62,64,65,66,68 0,1,6,8,10,11,12,15,20,23,27,30,32,33,38,39,40,41,46,47,49,50,51,52,53,55,56,58,60,61,62,64,65,66,69 0,1,2,4,5,6,9,10,12,13,14,15,16,18,25,26,27,28,29,30,34,37,38,39,43,44,46,47,48,50,56,59,63,65,68 3,5,8,9,10,12,13,16,20,21,23,24,25,29,31,35,36,38,39,42,44,45,48,49,50,51,52,54,58,59,61,66,67,68,69 3,4,5,6,7,8,9,14,15,17,19,21,22,23,26,28,29,32,33,34,35,39,40,41,42,45,46,48,53,60,63,65,66,67,69 0,2,3,6,7,8,11,12,13,14,19,22,24,25,28,29,30,31,32,35,37,41,43,44,45,52,54,55,56,57,58,60,61,62,63 0,1,4,11,15,16,17,18,19,20,22,23,25,27,31,33,34,36,37,38,40,41,42,43,45,48,49,52,54,55,57,59,63,64,67 ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 20:49 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
Имя пользователя1 mayton В треугольнике Паскаля число 70 стоит в диагонали. Это значит что оно не может соответствовать C(8,4) А ну ОК. Я просто уточнял. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.01.2020, 21:02 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
Придумал вариант первой задачи топика для двухмерного пространства и машины Тьюринга. Есть клеточное поле, размером NxM, причем натуральные числа N и M неизвестны. В каждой клетке может быть 0 или 1, исходная расстановка неизвестна. Поле является тором: если уйти за верхний край, окажешься снизу, за правый - слева, и т.д. В общем, как замкнутая лента, только двухмерная. Есть машина Тьюринга, с конечным набором состояний, и указателем на текущую ячейку. Программа выглядит как набор инструкций (State, bit) -> (State, bit, move): то есть в зависимости от текущего состояния машины и содержимого (бита) ячейки выбрать новое состояние, записать в ячейку новый бит (или оставить прежний), и сдвинуться куда-то - вверх, вниз, вправо или влево. Требуется обнулить все ячейки за время порядка O(N*M) пояснение: машина Тьюринга не умеет считать, может только менять состояние - целое число от 1 до K. Программа не должна зависеть от M, N и стартового содержимого ячеек. Перед стартом текущий указатель ставится в одну из ячеек, без разницы какую. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2020, 15:04 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
Имя пользователя1, Сначала по твоему методу делаешь один ряд в одном из измерений, дальше отталкиваясь от этого ряда твоим же методом проходишь по всем рядам другого измерения. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2020, 15:54 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
iOracleDev Имя пользователя1, Сначала по твоему методу делаешь один ряд в одном из измерений, дальше отталкиваясь от этого ряда твоим же методом проходишь по всем рядам другого измерения. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2020, 16:12 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
Сначала надо определить M,N. Изначально мы стоим в ячейке (0,0) условно. 1) Бегаем по тору по горизонтали от (0,0) по алгоритму поезда. который мы уже заем. Вычисляем M. 2) Бегаем по вертикали от (0,0) и определяем N 3) Дальше просто в двойном цикле проходим змейкой по тору и устанавливаем нули во все ячейки. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2020, 19:46 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
Хотя змейка тут не нужна. Тут-же тор. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.01.2020, 19:47 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
Ещё вспомнилась. Разбить всё множество натуральных чисел на 3 части таким образом, чтобы числа m, 2m и 3m всегда попадали в разные части (m - любое натуральное) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2020, 12:22 |
|
Относительно простые задачки
|
|||
---|---|---|---|
#18+
Имя пользователя1, что нужно указать в качестве разбиения натуральных? (ибо словесное определение уже само есть описанием разбиения, если оно конечно существует) ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2020, 21:51 |
|
|
start [/forum/topic.php?fid=16&msg=39916016&tid=1339678]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
167ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
69ms |
get tp. blocked users: |
1ms |
others: | 268ms |
total: | 549ms |
0 / 0 |