Exemplo n.º 1
0
        /// <summary>
        /// Solve the problem
        /// </summary>
        /// <returns>The sum result</returns>
        private long Solve()
        {
            BigNumber num = BigOperation.Pow(this.Number, this.BaseNumber);
            long      sum = 0;

            foreach (Char ch in num.ToString())
            {
                sum += long.Parse(ch.ToString());
            }
            return(sum);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Solve the problem
        /// </summary>
        /// <returns>The sum result</returns>
        private long Solve()
        {
            BigNumber pG  = BigOperation.Factorial(this.Number);
            int       sum = 0;

            foreach (char d in pG.ToString().ToCharArray())
            {
                sum += int.Parse(d.ToString());
            }
            return(sum);
        }
Exemplo n.º 3
0
        public long Solve()
        {
            BigNumber num = BigOperation.Pow(1, 1), res;

            for (int i = 2; i <= 1000; i++)
            {
                res  = BigOperation.Pow(i, i);
                num += res;
            }
            Console.WriteLine(num);
            return(long.Parse(num.ToString().Substring(num.ToString().Length - 10)));
        }
Exemplo n.º 4
0
        public long Solve()
        {
            BigNumber num;
            long      digitSum, longestDigitSum = 0;

            for (long i = 1; i < 100; i++)
            {
                for (long j = 1; j < 100; j++)
                {
                    num      = BigOperation.Pow(i, j);
                    digitSum = num.ToString().ToCharArray().Select <Char, long>(x => long.Parse(x.ToString())).Sum();
                    if (digitSum > longestDigitSum)
                    {
                        longestDigitSum = digitSum;
                    }
                }
            }
            return(longestDigitSum);
        }
Exemplo n.º 5
0
        /// <summary>
        /// Solve the problem
        /// </summary>
        /// <returns>The sum result</returns>
        private int Solve()
        {
            Stopwatch sw = new Stopwatch();

            sw.Start();
            BigNumber num;

            Members = new List <string>();
            for (int a = 2; a <= this.Limit; a++)
            {
                for (int b = 2; b <= this.Limit; b++)
                {
                    num = BigOperation.Pow(a, b);
                    if (!Members.Contains(num.ToString()))
                    {
                        Members.Add(num.ToString());
                    }
                }
            }
            sw.Stop();
            Console.WriteLine("Elapsed: {0}s, {1}ms", sw.Elapsed.Seconds, sw.Elapsed.Milliseconds);
            return(this.Members.Count);
        }