Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Перестановки C#

53K
16 декабря 2010 года
pro100saniok
18 / / 15.06.2010
Перечислить все возрастающие последовательности дли-
ны k из чисел 1..n в лексикографическом порядке.
(Пример: при n=5, k=2 получаем 12 13 14 15 23 24 25 34 35 45.)

вот решения,кто видеть ошибки исправьте :


Код:
Console.WriteLine(" (k)");
            int k = int.Parse(Console.ReadLine());
            Console.WriteLine("(n)");
            int n = int.Parse(Console.ReadLine());
            int[] x = new int[k];
            for (int i = 0; i < k; i++)
            {
                x = i + 1;
                Console.Write(x + " ");
            }
            Console.WriteLine();
 
            int s = 0;
            while (true)
            {
                s = k - 1;
                while (!(x < n - k + s + 1))
                {
                    s--;
                    if (s == -1)
                        break;
                }
                if (s == -1)
                    break;
                x = x + 1;
                for (int i = s + 1; i < k; i++)
                {
                    x = x[i - 1] + 1;
                }
                for (int i = 0; i < k; i++)
                {
                    Console.Write(x);
                }
                Console.WriteLine();
            }


помогите решить предыдущие задачу, заменив лексикографи-
ческий порядок на обратный (раньше идут те, которые больше в
лексикографическом порядке).
242
18 декабря 2010 года
Оlga
2.2K / / 04.02.2006
pro100sanyok
насчет ошибок, одна весьма очевидна - не информативное название темы, поменяйте пожалуйста на более конкретное, типа перестановки в лексикографическом порядке ...
а насчет кода, во первых конкретизируйте вопрос, что вызывает проблемы конкретно? во вторых, в коде не видно не одного комментария. думаете много таких людей, кому делать нечего чужой код читать и догадываться, что человек хотел сделать, а что на самом деле получилось? операции ввода k & n точно уж можно не писать, если у вас с этим проблема - смотрите в учебнике. проблема я так понимаю в алгоритме генерации этих самых перестановок, вот и конкретизируйте вопрос, опишите ваш алгоритм и т.д. тогда больше шансов ответ получить.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог