示例#1
0
        public void Problem41()
        {
            string        numberToPerm = "1";
            List <string> permutations = new List <string>();

            for (int i = 1; i < 9; i++)
            {
                int j = i + 1;
                numberToPerm += j;
                EulerHelperFunctions.GetPermutations(numberToPerm.ToCharArray(), numberToPerm.Length, permutations);
            }

            long largestPandigital = 0;

            foreach (long number in permutations.ConvertAll(x => Int64.Parse(x)).OrderByDescending(x => x))
            {
                if (EulerHelperFunctions.IsPrime(number))
                {
                    largestPandigital = number;
                    return;
                }
            }

            Assert.Equal(7652413, largestPandigital);
        }
示例#2
0
        public void Problem7()
        {
            long number  = 2;
            long counter = 1;
            long prime   = number;

            while (counter <= 10001)
            {
                if (EulerHelperFunctions.IsPrime(number))
                {
                    counter++;
                    prime = number;
                }

                number++;
            }

            Assert.Equal(104743, prime);
        }