Сравните время работы задачи Иосифа Флавия, используя реализацию: а) на массивах; б) на связанных списках - C#
Формулировка задачи:
Сравните время работы задачи Иосифа Флавия, используя реализацию:
а) на массивах; б) на связанных списках.
Решение задачи: «Сравните время работы задачи Иосифа Флавия, используя реализацию: а) на массивах; б) на связанных списках»
textual
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- namespace ConsoleApplication4
- {
- class Program
- {
- static void Main(string[] args)
- {
- int j = -1;
- int k = 0;
- Console.Write("Введите количество элементов: ");
- int n = Convert.ToInt32(Console.ReadLine());
- int n1 = n;
- Console.Write("Введите номер выбывающего: ");
- int m = Int32.Parse(Console.ReadLine());
- bool[] a = new bool[n];
- for (int i = 0; i < n; i++)
- {
- a[i] = true;
- }
- Console.WriteLine("Элементы выбывали в след порядке: ");
- while (n1 > 1)
- {
- j++;
- if (j > n - 1) j = 0;
- if (a[j]) k++;
- if (k == m)
- {
- a[j] = false;
- k = 0;
- Console.Write(j + 1 + " ");
- n1 = n1 - 1;
- }
- }
- Console.WriteLine();
- for (int i = 0; i < n; i++)
- {
- if (a[i] == true)
- {
- int x = i + 1;
- Console.WriteLine("Оставшийся элемент: " + x);
- }
- }
- Console.ReadLine();
- }
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д