Beispiel #1
0
        public static int Puzzle(int s)
        {
            if (s == 0)
            {
                return(0);
            }

            List <long> primes      = new List <long>();
            var         onePrimes   = KPrimes.CountKprimes(1, 2, s);
            var         threePrimes = KPrimes.CountKprimes(3, 0, s);
            var         sevenPrimes = KPrimes.CountKprimes(7, 0, s);

            int numberOfSolutions = 0;

            foreach (var onePrime in onePrimes)
            {
                foreach (var threePrime in threePrimes)
                {
                    foreach (var sevenPrime in sevenPrimes)
                    {
                        if ((onePrime + threePrime + sevenPrime) == s)
                        {
                            numberOfSolutions++;
                            break;
                        }
                    }
                }
            }


            return(numberOfSolutions);
        }
        public int Puzzle(int s)
        {
            if (s == 0)
            {
                return(0);
            }

            var twoPrimes   = KPrimes.CountKprimes(1, 0, s);
            var threePrimes = KPrimes.CountKprimes(3, 0, s);
            var sevenPrimes = KPrimes.CountKprimes(7, 0, s);

            /*
             * int i = 0;
             * int j = 0;
             * int k = s;
             * do
             * {
             *
             *
             *  i--;
             *
             * }
             * while (k > 0)*/
            return(0);
        }
Beispiel #3
0
 public void KPrimes_CountKprimes_Test()
 {
     testing(Array2String(KPrimes.CountKprimes(2, 0, 100)),
             Array2String(new long[]
                          { 4, 6, 9, 10, 14, 15, 21, 22, 25, 26, 33, 34, 35, 38, 39, 46, 49, 51,
                            55, 57, 58, 62, 65, 69, 74, 77, 82, 85, 86, 87, 91, 93, 94, 95 }));
     testing(Array2String(KPrimes.CountKprimes(3, 0, 100)),
             Array2String(new long[]
                          { 8, 12, 18, 20, 27, 28, 30, 42, 44, 45, 50, 52, 63, 66, 68, 70, 75, 76,
                            78, 92, 98, 99 }));
     testing(Array2String(KPrimes.CountKprimes(5, 1000, 1100)),
             Array2String(new long[]
                          { 1020, 1026, 1032, 1044, 1050, 1053, 1064, 1072, 1092, 1100 }));
     testing(Array2String(KPrimes.CountKprimes(5, 500, 600)),
             Array2String(new long[]
                          { 500, 520, 552, 567, 588, 592, 594 }));
 }
Beispiel #4
0
        public void KPrime_Test_Sample()
        {
            KPrimes kPrime = new KPrimes();

            Console.WriteLine("Basic Tests CountKprimes");
            Testing(Array2String(kPrime.CountKprimes(2, 0, 100)),
                    Array2String(new long[]
                                 { 4, 6, 9, 10, 14, 15, 21, 22, 25, 26, 33, 34, 35, 38, 39, 46, 49, 51,
                                   55, 57, 58, 62, 65, 69, 74, 77, 82, 85, 86, 87, 91, 93, 94, 95 }));
            Testing(Array2String(kPrime.CountKprimes(3, 0, 100)),
                    Array2String(new long[]
                                 { 8, 12, 18, 20, 27, 28, 30, 42, 44, 45, 50, 52, 63, 66, 68, 70, 75, 76,
                                   78, 92, 98, 99 }));
            Testing(Array2String(kPrime.CountKprimes(5, 1000, 1100)),
                    Array2String(new long[]
                                 { 1020, 1026, 1032, 1044, 1050, 1053, 1064, 1072, 1092, 1100 }));
            Testing(Array2String(kPrime.CountKprimes(5, 500, 600)),
                    Array2String(new long[]
                                 { 500, 520, 552, 567, 588, 592, 594 }));
        }
Beispiel #5
0
 public void KPrimeFactors()
 {
     testing(Array2String(KPrimes.KPrimeFactors(20)),
             Array2String(new long[]
                          { 2, 2, 5 }));
 }