Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.95/21: Рейтинг темы: голосов - 21, средняя оценка - 4.95
4 / 4 / 0
Регистрация: 14.05.2012
Сообщений: 116

Помочь принцессе выбрать наилучший вариант из n числа женихов

07.12.2012, 11:48. Показов 4401. Ответов 33
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят, привет! Помогите мне, пожалуйста, составить алгоритм и написать программу для следующей задачи:

Принцесса выбирает себе женихов. Нужно помочь принцессе выбрать наилучший вариант из n числа женихов. Составить алгоритм и написать программу.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.12.2012, 11:48
Ответы с готовыми решениями:

Найти наилучший вариант распределения ресурсов (на основании метода иерархии)
Если есть возможность, помогите с решением задачи .(условие в картинке), буду благодарен.

Выбрать вариант не имеющий ошибки и к каждому написать почему этот вариант правильный/неправильный
Прошу помогите, я плохо понимаю c++, да и простите если не в той теме, в общем, дали задание: Выбрать вариант не имеющий ошибки и к...

Наилучший алгоритм вывода числа на консоль (например из регистра)
У меня масса вариантов как сделать вывод числа на консоль, но я никак не могу определиться хотя бы с одним. Хотелось бы чтобы этот алгоритм...

33
 Аватар для Necronomicron
65 / 50 / 7
Регистрация: 09.11.2012
Сообщений: 219
11.12.2012, 20:14
Студворк — интернет-сервис помощи студентам
Алёнчик, ну скажем, у тебя список из пяти принцев:
1: 34
2: 7
3: 89
4: 62
5: 25
Какой должен быть вывод? Напиши его.
0
1 / 1 / 0
Регистрация: 21.11.2012
Сообщений: 11
11.12.2012, 21:02
Necronomicron, Ну она не указала алгоритм наилучшего выбора принца, если в очереди более 3 принцев.
Но если предположить, что алгоритм такой:
Первому всегда отказываем, если второй красивее первого его и выбираем, если нет смотрим на следующего, если он красивее предыдущего его и выбираем, итд.

Из 5 принцев возможно 120 комбинаций очередей.
Значит надо прогнать каждую очередь по этому алгоритму и вычислить сколько раз из 120 принцесса выбрали наилучшего принца, и сколько раз ей не повезло.

2Алёнчик Я правильно понял условие задачи?
1
 Аватар для Necronomicron
65 / 50 / 7
Регистрация: 09.11.2012
Сообщений: 219
11.12.2012, 21:38
BlackLacost, что-то хрень какая-то, надо отсортировать массив что ли? Или получить все последовательности? Пока толком не пойму условие, то я хрен смогу помочь по очевидным причинам. %/
0
4 / 4 / 0
Регистрация: 14.05.2012
Сообщений: 116
11.12.2012, 22:37  [ТС]
BlackLacost, Да, правильно)) Помогите, пожалуйста составить самый оптимальный алгоритм и написать программу. Заранее огромное спасибо!!!
0
146 / 143 / 32
Регистрация: 21.01.2012
Сообщений: 545
12.12.2012, 12:18
Сейчас точно не помню, но из теории вероятностей алгоритм выбора в условиях неопределенности звучит так:

Есть n принцев, из которых выбираем
Если принца отвергли - его уже не выбрать
Задача: выбрать максимально красивого
Алгоритм:
1)Просматриваем n*2/3 принцев, отвергая их всех, какими бы красивыми они ни были
2)Выбираем первого принца, который красивее всех предыдущих

Число n*2/3 может быть неверно, надо смотреть в литературе, как называется теорема не помню, но алгоритм точно такой
1
4 / 4 / 0
Регистрация: 14.05.2012
Сообщений: 116
12.12.2012, 15:09  [ТС]
Помогите, пожалуйста, написать программу по этому алгоритму.
0
146 / 143 / 32
Регистрация: 21.01.2012
Сообщений: 545
12.12.2012, 15:42
Ну лааадно щас

Добавлено через 27 минут
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
using System;
using System.Collections.Generic;
using System.Text;
 
namespace ConsoleApplication1
{
    class Program
    {
        static int[] princes = { 1, 22, 33, 45, 12, 54, 24, 12 }; //коллекция принцев
        static int kriteriy = 0;       
        //ТЧКВХД
        static void Main(string[] args)
        {
            StringBuilder s = new StringBuilder();
            foreach (int kr in princes)
            {
                s.Append(kr + " ");
            }
            Console.WriteLine("красота принцев:"+s);            
            kriteriy = princes.Length * 2 / 3;
            Console.WriteLine("Алгоритм отверг {0} принцев", kriteriy);
            int max = GetMaxPrince(); //самый красивый из отвергнутых
            int best = GetBestPrince(max); //индекс лучшего
            Console.WriteLine("Алгоритм выбрал принца под номером {0}, с красотой {1}", best+1, princes[best]);
            Console.ReadLine();
        }
 
        /// <summary>
        /// Максимум красоты считает тут
        /// </summary>
        /// <returns></returns>
        static int GetMaxPrince()
        {
            int max=int.MinValue;
            for (int ii = 0; ii < kriteriy; ii++)
            { 
                if (princes[ii]>max)
                    max = princes[ii];
            }
            return max;
        }
 
        /// <summary>
        /// Выбираем лучшего!
        /// </summary>
        /// <param name="max">максимальный</param>
        /// <returns></returns>
        static int GetBestPrince(int max)
        {
            for (int ii = kriteriy; ii < princes.Length; ii++)
            {
                if (princes[ii] > max)
                    return ii;
            }
            return princes.Length-1;
        }
    }
}
1
4 / 4 / 0
Регистрация: 14.05.2012
Сообщений: 116
12.12.2012, 15:54  [ТС]
Объясните, пожалуйста суть этой программы, а то я не могу разобраться . Я не поняла суть работы алгоритма...
0
146 / 143 / 32
Регистрация: 21.01.2012
Сообщений: 545
12.12.2012, 16:01
Есть набор принцев 1, 22, 33, 45, 12, 54, 24, 12
Вычисляем из их количества критерий : 8*2/3 = 5
Берем принцев по числу критерия и выбираем из них самого красивого - это четвертый с 45;
Дальше берем первого попавшегося который будет красивее него - это номер 6 с 54;

С числом критерия я мог наврать, может быть там n/3
1
4 / 4 / 0
Регистрация: 14.05.2012
Сообщений: 116
12.12.2012, 16:21  [ТС]
Я всё равно не очень поняла
вот, например, мой ряд:
15, 20, 61, 57, 46, 10, 12, 94, 85
программа пишет:
алгоритм отверг 6 принцев
алгоритм выбрал принца под номером 8, с красотой 94.
Почему отверг 6, а выбрал под номером 8?
0
146 / 143 / 32
Регистрация: 21.01.2012
Сообщений: 545
12.12.2012, 18:11
15, 20, 61, 57, 46, 10, 12, 94, 85 - всего 9 критерий равен 6
То есть отвергаем 6 принцев какими бы они ни были распрекрасными и выбираем из них лучшего.
Это номер 3 с 61 красоты.
Дальше перебираем оставшихся и берем первого кто красивее 61.
номер 7 - 12 - отвергаем
номер 8 - 94 - берем

*конец алгоритма*

Добавлено через 1 час 41 минуту
Кстати задача называется "Задача о разборчивой невесте", а критерий равен n/e где е = 2.781
1
4 / 4 / 0
Регистрация: 14.05.2012
Сообщений: 116
13.12.2012, 15:26  [ТС]
Спасибо огромное за помощь!!! Программа полностью правильная только помогите, пожалуйста, изменить а ней следующие моменты:

количество принцев должно вводится с клавиатуры
степень красоты выбирается в случайном порядке
вывод на печать должен осуществляться следующем образом:
например я ввожу 10 принца
в случайном порядке выбирается степень красоты, например:
60 40 88 32 51 72 10 31 45 99
алгоритм отверг 3 принцев
алгоритм выбрал принца под номером 10 с красотой 99
потом идет тот же набор цифр только в другом порядке, например:
51 32 72 10 31 45 99 60 40 88
алгоритм отверг принцев
алгоритм выбрал принца под номером 7 с красотой 99
и т.д.
Заранее огромное спасибо!!!
0
13.12.2012, 17:12
 Комментарий модератора 
Алёнчик, Вы не задумывались о том, почему все Ваши посты отредактированы по причине оверквотинга?
Не цитируйте целиком чужие посты, щелкайте по нику пользователей, и они автоматически будут вставлены в Ваш новый пост.
0
 Аватар для Necronomicron
65 / 50 / 7
Регистрация: 09.11.2012
Сообщений: 219
03.01.2013, 23:52
Цитата Сообщение от KeBJIaP Посмотреть сообщение
То есть отвергаем 6 принцев какими бы они ни были распрекрасными и выбираем из них лучшего.
Что?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
03.01.2013, 23:52

Прошу помочь выбрать роутер
Драсте уважаемые. собсно сабж. есть выделенка, интернет в которой включается по впну, есть комп с материнкой асус со встроеной штукенцией...

Помочь вождю выбрать кучку с монетами
Всем привет. Я начал заниматься C(да, именно С) неделю назад. Нужно для ЕГЭ. Сижу, решаю задачки разные и тут наткнутся на такую. Главный...

Какой вариант выбрать ?
Avast free antivirus + Comodo Firewall или сразу установить Comodo Internet Security?

Подскажите какой вариант выбрать
Здравствуйте. Просьба за вопрос сильно камнями не закидывать, ибо только начал пытаться осваивать. Вопрос такой. Пишу программу...

Какой вариант лучше выбрать?
Подскажите пожалуста. Пишу первый сайт. Движок на php. Если правильно разобрался, весь сайт можно сделать на php. Хочу сделать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
34
Ответ Создать тему
Новые блоги и статьи
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru