Вывести на экран все четырехзначные числа, в которых ровно три одинаковые цифры - C#

Формулировка задачи:

Даны четырехзначные натуральные числа N и K. Из чисел от N до K выбрать те, запись которых содержит ровно три одинаковых цифры.

Код к задаче: «Вывести на экран все четырехзначные числа, в которых ровно три одинаковые цифры - C#»

textual
using System;
 
class Program
{
    static int[] Range(int n, int k)
    {
        int[] a = new int[k - n];
        for (int i = 0; i < a.Length; i++)
            a[i] = n + i;
        return a;
    }
 
    static int[] Map(int number)
    {
        int[] a = new int[10];
        while (number != 0)
        {
            a[number % 10]++;
            number = number / 10;
        }
        return a;
    }
 
    static bool Exist(int[] map, int count)
    {
        for (int i = 0; i < map.Length; i++)
            if (map[i] == count)
                return true;
        return false;
    }
 
    static void Main(string[] args)
    {
        int k = 1000, n = 7000;
        int[] range = Range(1000, 7000);
        for (int i = 0; i < range.Length; i++)
        {
            int[] map = Map(range[i]);
            if (Exist(map, 3))
                Console.WriteLine(range[i]);
        }
        Console.ReadLine();
    }
}

12   голосов, оценка 4.250 из 5


СОХРАНИТЬ ССЫЛКУ