Подсчёт числа фигур по образцу.
Светлый
Дата: Пятница, 28.09.2018, 09:50 |
Сообщение № 1
Группа: Друзья
Ранг: Старожил
Сообщений: 1851
Репутация:
523
±
Замечаний:
0% ±
Excel 2013, 2016
Добрый всем день! Был такой вопрос . Решил всё-таки выложить тему в МШ, а то здесь затишье. Дано поле с заполнением 1 и -1. Даны образцы 5х4 : 1 и -1 - обязательное совпадение, пустые - неважно. Нужно подсчитать, сколько раз данный образец совпадёт с полем. Формулу лучше универсальную. Изменил образец, автоматически получил количество. Решения уже опубликованы в ответе, но есть более короткие. У меня 156 символов. Чувствую, что есть решения значительно короче, но никак не получается побороть некоторые функции. Вскрываемся 8 октября. *Если в образце произвольное количество 1 и -1, то формула 165 символов.
Добрый всем день! Был такой вопрос . Решил всё-таки выложить тему в МШ, а то здесь затишье. Дано поле с заполнением 1 и -1. Даны образцы 5х4 : 1 и -1 - обязательное совпадение, пустые - неважно. Нужно подсчитать, сколько раз данный образец совпадёт с полем. Формулу лучше универсальную. Изменил образец, автоматически получил количество. Решения уже опубликованы в ответе, но есть более короткие. У меня 156 символов. Чувствую, что есть решения значительно короче, но никак не получается побороть некоторые функции. Вскрываемся 8 октября. *Если в образце произвольное количество 1 и -1, то формула 165 символов. Светлый
Программировать проще, чем писать стихи.
Сообщение отредактировал Светлый - Пятница, 28.09.2018, 12:36
Ответить
Сообщение Добрый всем день! Был такой вопрос . Решил всё-таки выложить тему в МШ, а то здесь затишье. Дано поле с заполнением 1 и -1. Даны образцы 5х4 : 1 и -1 - обязательное совпадение, пустые - неважно. Нужно подсчитать, сколько раз данный образец совпадёт с полем. Формулу лучше универсальную. Изменил образец, автоматически получил количество. Решения уже опубликованы в ответе, но есть более короткие. У меня 156 символов. Чувствую, что есть решения значительно короче, но никак не получается побороть некоторые функции. Вскрываемся 8 октября. *Если в образце произвольное количество 1 и -1, то формула 165 символов. Автор - Светлый Дата добавления - 28.09.2018 в 09:50
vikttur
Дата: Пятница, 28.09.2018, 23:29 |
Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
Фигуры контактируют. А в той задаче соприкасаться нельзя.
Фигуры контактируют. А в той задаче соприкасаться нельзя. vikttur
Ответить
Сообщение Фигуры контактируют. А в той задаче соприкасаться нельзя. Автор - vikttur Дата добавления - 28.09.2018 в 23:29
Светлый
Дата: Суббота, 29.09.2018, 10:31 |
Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 1851
Репутация:
523
±
Замечаний:
0% ±
Excel 2013, 2016
Углами можно. Другие фигуры не создаются. Но если непременно нужно только изолированные фигуры, в шаблоне на углах добавить -1.
Углами можно. Другие фигуры не создаются. Но если непременно нужно только изолированные фигуры, в шаблоне на углах добавить -1. Светлый
Программировать проще, чем писать стихи.
Ответить
Сообщение Углами можно. Другие фигуры не создаются. Но если непременно нужно только изолированные фигуры, в шаблоне на углах добавить -1. Автор - Светлый Дата добавления - 29.09.2018 в 10:31
MCH
Дата: Четверг, 04.10.2018, 08:31 |
Сообщение № 4
Группа: Админы
Ранг: Старожил
Сообщений: 2004
Репутация:
752
±
Замечаний:
±
У меня получился монстр на 198 символов
Код
=СУММ(--(МУМНОЖ(Ч(СМЕЩ(A3;ЦЕЛОЕ((СТРОКА(1:35)-1)/5)+ЦЕЛОЕ((СТОЛБЕЦ(A:T)-1)/5);ОСТАТ(СТРОКА(1:35)-1;5)+ОСТАТ(СТОЛБЕЦ(A:T)-1;5)));Ч(СМЕЩ(L9;(СТРОКА(1:20)-1)/5;ОСТАТ(СТРОКА(1:20)-1;5))))=СЧЁТ(L9:P12)))
Аналогичен тому, что выложен в исходной теме (писал сам) можно конечно сократить на несколько символов убрав некоторые скобки ссылаясь на другие диапазоны, но лучше придумать другой алгоритм
У меня получился монстр на 198 символов
Код
=СУММ(--(МУМНОЖ(Ч(СМЕЩ(A3;ЦЕЛОЕ((СТРОКА(1:35)-1)/5)+ЦЕЛОЕ((СТОЛБЕЦ(A:T)-1)/5);ОСТАТ(СТРОКА(1:35)-1;5)+ОСТАТ(СТОЛБЕЦ(A:T)-1;5)));Ч(СМЕЩ(L9;(СТРОКА(1:20)-1)/5;ОСТАТ(СТРОКА(1:20)-1;5))))=СЧЁТ(L9:P12)))
Аналогичен тому, что выложен в исходной теме (писал сам) можно конечно сократить на несколько символов убрав некоторые скобки ссылаясь на другие диапазоны, но лучше придумать другой алгоритм MCH
Ответить
Сообщение У меня получился монстр на 198 символов
Код
=СУММ(--(МУМНОЖ(Ч(СМЕЩ(A3;ЦЕЛОЕ((СТРОКА(1:35)-1)/5)+ЦЕЛОЕ((СТОЛБЕЦ(A:T)-1)/5);ОСТАТ(СТРОКА(1:35)-1;5)+ОСТАТ(СТОЛБЕЦ(A:T)-1;5)));Ч(СМЕЩ(L9;(СТРОКА(1:20)-1)/5;ОСТАТ(СТРОКА(1:20)-1;5))))=СЧЁТ(L9:P12)))
Аналогичен тому, что выложен в исходной теме (писал сам) можно конечно сократить на несколько символов убрав некоторые скобки ссылаясь на другие диапазоны, но лучше придумать другой алгоритм Автор - MCH Дата добавления - 04.10.2018 в 08:31
MCH
Дата: Четверг, 04.10.2018, 08:48 |
Сообщение № 5
Группа: Админы
Ранг: Старожил
Сообщений: 2004
Репутация:
752
±
Замечаний:
±
за счет изменения диапазонов и применения констант сократил формулу до 161 символа 157 символов с учётом "="
за счет изменения диапазонов и применения констант сократил формулу до 161 символа 157 символов с учётом "=" MCH
Ответить
Сообщение за счет изменения диапазонов и применения констант сократил формулу до 161 символа 157 символов с учётом "=" Автор - MCH Дата добавления - 04.10.2018 в 08:48
Светлый
Дата: Четверг, 04.10.2018, 22:03 |
Сообщение № 6
Группа: Друзья
Ранг: Старожил
Сообщений: 1851
Репутация:
523
±
Замечаний:
0% ±
Excel 2013, 2016
Удалось ещё пару символов сократить. Теперь 163, а если использовать константу (число непустых в образце), то 154.
Удалось ещё пару символов сократить. Теперь 163, а если использовать константу (число непустых в образце), то 154. Светлый
Программировать проще, чем писать стихи.
Ответить
Сообщение Удалось ещё пару символов сократить. Теперь 163, а если использовать константу (число непустых в образце), то 154. Автор - Светлый Дата добавления - 04.10.2018 в 22:03
Светлый
Дата: Понедельник, 08.10.2018, 09:32 |
Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 1851
Репутация:
523
±
Замечаний:
0% ±
Excel 2013, 2016
Никто больше не откликнулся. Будем вскрываться?
Никто больше не откликнулся. Будем вскрываться? Светлый
Программировать проще, чем писать стихи.
Ответить
Сообщение Никто больше не откликнулся. Будем вскрываться? Автор - Светлый Дата добавления - 08.10.2018 в 09:32
MCH
Дата: Понедельник, 08.10.2018, 12:58 |
Сообщение № 8
Группа: Админы
Ранг: Старожил
Сообщений: 2004
Репутация:
752
±
Замечаний:
±
т.к. у меня самая длинная формула (157 с "="), то вскрываюсь первым Формула для треугольников:Код
=СУММ(Ч(МУМНОЖ(Ч(СМЕЩ(A2;ОСТАТ(СТРОКА(7:41);7)+СТОЛБЕЦ(E:X)/5;СТРОКА(7:41)/7-1+ОСТАТ(СТОЛБЕЦ(E:X);5)));Ч(СМЕЩ(L8;СТРОКА(5:24)/5;ОСТАТ(СТРОКА(5:24);5))))=12))
была мысль убрать "-1" и сократить на пару символов, но не получилось
т.к. у меня самая длинная формула (157 с "="), то вскрываюсь первым Формула для треугольников:Код
=СУММ(Ч(МУМНОЖ(Ч(СМЕЩ(A2;ОСТАТ(СТРОКА(7:41);7)+СТОЛБЕЦ(E:X)/5;СТРОКА(7:41)/7-1+ОСТАТ(СТОЛБЕЦ(E:X);5)));Ч(СМЕЩ(L8;СТРОКА(5:24)/5;ОСТАТ(СТРОКА(5:24);5))))=12))
была мысль убрать "-1" и сократить на пару символов, но не получилось MCH
Ответить
Сообщение т.к. у меня самая длинная формула (157 с "="), то вскрываюсь первым Формула для треугольников:Код
=СУММ(Ч(МУМНОЖ(Ч(СМЕЩ(A2;ОСТАТ(СТРОКА(7:41);7)+СТОЛБЕЦ(E:X)/5;СТРОКА(7:41)/7-1+ОСТАТ(СТОЛБЕЦ(E:X);5)));Ч(СМЕЩ(L8;СТРОКА(5:24)/5;ОСТАТ(СТРОКА(5:24);5))))=12))
была мысль убрать "-1" и сократить на пару символов, но не получилось Автор - MCH Дата добавления - 08.10.2018 в 12:58
Светлый
Дата: Понедельник, 08.10.2018, 14:35 |
Сообщение № 9
Группа: Друзья
Ранг: Старожил
Сообщений: 1851
Репутация:
523
±
Замечаний:
0% ±
Excel 2013, 2016
Так я и думал, что чуть ли не до символа формулы совпадут. Надеялся, что через другие функции удастся решить задачу. Если даже профи не нашли решения, то его нет. Универсальная формула для верхнего образца 163 символа:Код
=СУММ(Ч(МУМНОЖ(Ч(СМЕЩ(I2;СТОЛБЕЦ(E:X)/5+ОСТАТ(СТРОКА(7:62);7);ОСТАТ(СТОЛБЕЦ(E:X);5)-СТРОКА(7:62)/7));Ч(СМЕЩ(L3;СТРОКА(5:24)/5;ОСТАТ(СТРОКА(5:24);5))))=СЧЁТ(L4:P7)))
Удобная формула совпадает (отличие только в диапазонах) с MCH , а в короткой формуле избавился от -1 (154 символа):Код
=СУММ(Ч(МУМНОЖ(Ч(СМЕЩ(I2;СТОЛБЕЦ(E:X)/5+ОСТАТ(СТРОКА(7:62);7);ОСТАТ(СТОЛБЕЦ(E:X);5)-СТРОКА(7:62)/7));Ч(СМЕЩ(L3;СТРОКА(5:24)/5;ОСТАТ(СТРОКА(5:24);5))))=12))
Так я и думал, что чуть ли не до символа формулы совпадут. Надеялся, что через другие функции удастся решить задачу. Если даже профи не нашли решения, то его нет. Универсальная формула для верхнего образца 163 символа:Код
=СУММ(Ч(МУМНОЖ(Ч(СМЕЩ(I2;СТОЛБЕЦ(E:X)/5+ОСТАТ(СТРОКА(7:62);7);ОСТАТ(СТОЛБЕЦ(E:X);5)-СТРОКА(7:62)/7));Ч(СМЕЩ(L3;СТРОКА(5:24)/5;ОСТАТ(СТРОКА(5:24);5))))=СЧЁТ(L4:P7)))
Удобная формула совпадает (отличие только в диапазонах) с MCH , а в короткой формуле избавился от -1 (154 символа):Код
=СУММ(Ч(МУМНОЖ(Ч(СМЕЩ(I2;СТОЛБЕЦ(E:X)/5+ОСТАТ(СТРОКА(7:62);7);ОСТАТ(СТОЛБЕЦ(E:X);5)-СТРОКА(7:62)/7));Ч(СМЕЩ(L3;СТРОКА(5:24)/5;ОСТАТ(СТРОКА(5:24);5))))=12))
Светлый
Программировать проще, чем писать стихи.
Ответить
Сообщение Так я и думал, что чуть ли не до символа формулы совпадут. Надеялся, что через другие функции удастся решить задачу. Если даже профи не нашли решения, то его нет. Универсальная формула для верхнего образца 163 символа:Код
=СУММ(Ч(МУМНОЖ(Ч(СМЕЩ(I2;СТОЛБЕЦ(E:X)/5+ОСТАТ(СТРОКА(7:62);7);ОСТАТ(СТОЛБЕЦ(E:X);5)-СТРОКА(7:62)/7));Ч(СМЕЩ(L3;СТРОКА(5:24)/5;ОСТАТ(СТРОКА(5:24);5))))=СЧЁТ(L4:P7)))
Удобная формула совпадает (отличие только в диапазонах) с MCH , а в короткой формуле избавился от -1 (154 символа):Код
=СУММ(Ч(МУМНОЖ(Ч(СМЕЩ(I2;СТОЛБЕЦ(E:X)/5+ОСТАТ(СТРОКА(7:62);7);ОСТАТ(СТОЛБЕЦ(E:X);5)-СТРОКА(7:62)/7));Ч(СМЕЩ(L3;СТРОКА(5:24)/5;ОСТАТ(СТРОКА(5:24);5))))=12))
Автор - Светлый Дата добавления - 08.10.2018 в 14:35
MCH
Дата: Понедельник, 08.10.2018, 19:35 |
Сообщение № 10
Группа: Админы
Ранг: Старожил
Сообщений: 2004
Репутация:
752
±
Замечаний:
±
а в короткой формуле избавился от -1
Не совсем корректное избавление, т.к. дополнительно перебираем ячейки в столбце J и K, а там может быть "мусор"
а в короткой формуле избавился от -1
Не совсем корректное избавление, т.к. дополнительно перебираем ячейки в столбце J и K, а там может быть "мусор"MCH
Ответить
Сообщение а в короткой формуле избавился от -1
Не совсем корректное избавление, т.к. дополнительно перебираем ячейки в столбце J и K, а там может быть "мусор"Автор - MCH Дата добавления - 08.10.2018 в 19:35
Светлый
Дата: Понедельник, 08.10.2018, 20:47 |
Сообщение № 11
Группа: Друзья
Ранг: Старожил
Сообщений: 1851
Репутация:
523
±
Замечаний:
0% ±
Excel 2013, 2016
Есть пустые разделительные столбцы, которые точно НЕ дадут совпадения с шаблоном. Хотя, если в одной из ячеек будет значение 10, может дать ложное совпадение.
Есть пустые разделительные столбцы, которые точно НЕ дадут совпадения с шаблоном. Хотя, если в одной из ячеек будет значение 10, может дать ложное совпадение.Светлый
Программировать проще, чем писать стихи.
Сообщение отредактировал Светлый - Понедельник, 08.10.2018, 20:52
Ответить
Сообщение Есть пустые разделительные столбцы, которые точно НЕ дадут совпадения с шаблоном. Хотя, если в одной из ячеек будет значение 10, может дать ложное совпадение.Автор - Светлый Дата добавления - 08.10.2018 в 20:47