Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 15.05.2016, 15:42
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

cyber,
всего вариантов 768 за счёт оптимизации (continue) получилось 488 , а необходимые варианты были созданы только 1 раз (всего 13).
<script>
var num = [10, 7, 8, 1],
    res = [],
    limit = 55,
    a, b, c, e;
for (var i = 0; i <= 5; i++) {
    a = i * num[0];
    if (a > limit) continue;
    for (var k = 0; k <= 3; k++) {
        b = k * num[1];
        if (a + b > limit) continue;
        for (var n = 0; n <= 3; n++) {
            c = n * num[2];
            if (a + b + c > limit) continue;
            for (var d = 0; d <= 7; d++) {
                e = d * num[3];
                if (a + b + c + e == limit) res.push([a, b, c, e])
            }
        }
    }
};
document.write(
  res.join("<br>")+ "<br>Всего вариантов : " + res.length
);
</script>
Ответить с цитированием
  #12 (permalink)  
Старый 15.05.2016, 15:43
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

Prolog использует поиск с возвратом.
cyber, ты бы открыл википедию и почитал, что такое поиск с возвратом. Я даже не понимаю, о каком поиске с возвратом может идти речь, если у вас нет дерева
Поиск с возвратом, это практически тоже самое, что и поиск в глубину, который, как и другие методы неинформированого поиска реализован (из коробки) в моем рекурсивном итераторе, RecursiveIterator / Рекурсивный итератор
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
  #13 (permalink)  
Старый 15.05.2016, 15:46
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

Сообщение от nerv_
ы бы открыл википедию и почитал, что такое поиск с возвратом. Я даже не понимаю, о каком поиске с возвратом может идти речь, если у вас нет дерева
Вот тебе пример без дерева https://en.wikipedia.org/wiki/Sudoku...s#Backtracking
Проще говоря, это тупо перебор всех возможных вариантов, с нужными ифками на отброс лишних вариантов
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
  #14 (permalink)  
Старый 15.05.2016, 15:47
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

рони, спасибо, ты быстрый, я только начал писать))
П.с а вообще я чет заигрался с рекурсией и костылями что не попробовал на форах
П.с.с я не знаю какие у меня буду входные данные, то что я дал это данные которые я вручную проверил и на них тестирую))
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.

Последний раз редактировалось cyber, 15.05.2016 в 15:53.
Ответить с цитированием
  #15 (permalink)  
Старый 15.05.2016, 15:54
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

Сообщение от cyber
Вот тебе пример без дерева https://en.wikipedia.org/wiki/Sudoku...s#Backtracking
похоже, что понятие графа пространства состояний тебе не знакомо. Твоя ссылка как раз о нем.
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
  #16 (permalink)  
Старый 15.05.2016, 15:58
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

nerv_, ты ведешь к тому что мне нужно дерево или граф?)
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
  #17 (permalink)  
Старый 15.05.2016, 17:52
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

Но посути получается, что при рекурсии оно входит в своеобразное дерево и углубляется пока сумма меньше квоты
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
  #18 (permalink)  
Старый 15.05.2016, 17:55
Аватар для nerv_
junior
Отправить личное сообщение для nerv_ Посмотреть профиль Найти все сообщения от nerv_
 
Регистрация: 29.11.2011
Сообщений: 3,924

Сообщение от cyber
ты ведешь к тому что мне нужно дерево или граф?)
я пытаюсь сказать, что поиск с возвратом подразумевает наличие дерева/графа состояний, который (граф), зачастую, формируется на лету (on the fly). По крайней мере пятнашки я именно так решал.

Информационные источники:
Искусственный интеллект. Современный подход (книга)
Artificial Intelligence (онлайн курс от института Беркли)
__________________
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук
Ответить с цитированием
  #19 (permalink)  
Старый 15.05.2016, 18:24
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

Сообщение от nerv_
я пытаюсь сказать, что поиск с возвратом подразумевает наличие дерева/графа состояний, который (граф), зачастую, формируется на лету (on the fly). По крайней мере пятнашки я именно так решал.
Т.е мне по сути нужно будет дерево
10
   /   |   \     \
 10  1   8    7
                 / |   \  \
                1 7  10   8

и так далее в зависимости от количества возможных элементов?
или как, а то вообще идей нет уже
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
  #20 (permalink)  
Старый 16.05.2016, 00:11
Аватар для cyber
I am Student
Отправить личное сообщение для cyber Посмотреть профиль Найти все сообщения от cyber
 
Регистрация: 17.12.2011
Сообщений: 4,415

Короче сдал и я вот не пойму, не проходило тест из за того что ифка для проверки выхода за границе находилась в начале функции, а не перед ее вызовом, как то так.
Все было гениально просто
__________________
Цитата:
Если ограничения и условия описываются как "коробка", то хитрость в том что бы найти именно коробку... Не думайте о чем то глобальном - найдите коробку.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Расписать алгоритм траскрибирования за $$$ wekze Общие вопросы Javascript 0 24.06.2014 20:55
Необычный алгоритм. Неповторяющиеся числа. broadcast77 Общие вопросы Javascript 5 13.01.2014 10:46
Как написать алгоритм выборки в javascript? Isaac Общие вопросы Javascript 13 06.02.2013 11:15
Волновой алгоритм Ли с 8-ми направлениями boy_cow Общие вопросы Javascript 6 04.10.2012 21:08
Спецификация Ecma-262. Пункт 8.7.2 PutValue(V,W) не до конца ясен алгоритм. vandy3 Общие вопросы Javascript 0 09.01.2012 17:31