예제 #1
0
 private static long SumOfAmicableNumbersUnder(int ceiling) =>
 StrangeEnumerable.Range(1, ceiling)
 .Where(a =>
 {
     long b = a.GetFactorsNotIncluding().Sum();
     return(a.IsAmicablePairOf(b));
 })
 .Sum();
예제 #2
0
 private static long FirstTriangleNumberWithDivisorsOver(int divisors) =>
 StrangeEnumerable.RangeTriangleNumbers(long.MaxValue)
 .FirstOrDefault(n => n.GetNumberOfFactors() > divisors);
예제 #3
0
 private static long LongestCollatzSequenceUnder(int ceiling) =>
 StrangeEnumerable.Range(1, ceiling)
 .OrderByDescending(n => n.CollatzSequenceLength())
 .FirstOrDefault();
예제 #4
0
        static void Main(string[] args)
        {
            long result = StrangeEnumerable.RangePrimes(CEILING).Sum();

            System.Console.WriteLine(result);
        }
예제 #5
0
 private static long SumOfNumbersNotSumOfTwoAbundantNumbers(int ceiling, IEnumerable <long> sumsOfTwoAbundantNumbers) =>
 StrangeEnumerable.Range(1, ceiling)
 .Except(sumsOfTwoAbundantNumbers)
 .Sum();
예제 #6
0
 private static List <long> AbundantNumbersUnder(int count) =>
 StrangeEnumerable.Range(1, count).Where(n => n.IsAbundant()).ToList();
예제 #7
0
 private static long GetPrimeNumber(int count) =>
 StrangeEnumerable.RangePrimes(long.MaxValue)
 .Take(count)
 .Last();