{
  "name": "Project Euler Problems",
  "order": 6,
  "time": "",
  "helpRoom": "HelpJavaScript",
  "challenges": [
    {
      "id": "5900f36e1000cf542c50fe80",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 1: Multiples of 3 and 5",
      "tests": [
        "assert.strictEqual(multiplesOf3and5(1000), 233168, 'message: <code>multiplesOf3and5(1000)</code> should return 233168.');",
        "assert.strictEqual(multiplesOf3and5(49), 543, 'message: <code>multiplesOf3and5(49)</code> should return 543.');",
        "assert.strictEqual(multiplesOf3and5(19564), 89301183, 'message: <code>multiplesOf3and5(19564)</code> should return 89301183.');",
        "assert.strictEqual(multiplesOf3and5(8456), 16687353, 'message: Your function is not returning the correct result using our tests values.');"
      ],
      "solutions": ["const multiplesOf3and5 = (number) => {\n  var total = 0;\n\n  for(var i = 0; i < number; i++) {\n    if(i % 3 == 0 || i % 5 == 0) {\n      total += i;\n    }\n  }\n  return total;\n};"],
      "translations": {},
      "challengeSeed": [
        "function multiplesOf3and5(number) {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "multiplesOf3and5(1000);"
      ],
      "description": [
        "If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23.",
        "Find the sum of all the multiples of 3 or 5 below the provided parameter value <code>number</code>."
      ]
    },
    {
      "id": "5900f36e1000cf542c50fe81",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 2: Even Fibonacci Numbers",
      "tests": [
        "assert.strictEqual(fiboEvenSum(10), 188, 'message: <code>fiboEvenSum(10)</code> should return 188.');",
        "assert.strictEqual(fiboEvenSum(23), 60696, 'message: <code>fiboEvenSum(23)</code> should return 60696.');",
        "assert.strictEqual(fiboEvenSum(43), 1485607536, 'message: <code>fiboEvenSum(43)</code> should return 1485607536.');",
        "assert.strictEqual(fiboEvenSum(18), 3382, 'message: Your function is not returning the correct result using our tests values.');",
        "assert.equal(fiboEvenSum(31) % 2 === 0, true, 'message: Your function should return an <code>even</code> value.');"
      ],
      "solutions": ["const fiboEvenSum = (number) => {\n  let temp, sum = 0, a = 0, b = 1;\n    while (number >= 0) {\n      temp = a;\n      a = b;\n      b += temp;\n      number --;\n      if ((b % 2) === 0) {\n        sum += b;\n      }\n    }\n\n  return sum;\n}"],
      "translations": {},
      "challengeSeed": [
        "function fiboEvenSum(number) {",
        "  // You can do it!",
        "  return true;",
        "}",
        "",
        "fiboEvenSum(10);"
      ],
      "description": [
        "Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be:",
        "1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...",
        "By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms."
      ]
    },
    {
      "id": "5900f36f1000cf542c50fe82",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 3: Largest prime factor",
      "tests": [
        "assert.strictEqual(largestPrimeFactor(2), 2, 'message: <code>largestPrimeFactor(2)</code> should return 2.');",
        "assert.strictEqual(largestPrimeFactor(3), 3, 'message: <code>largestPrimeFactor(3)</code> should return 3.');",
        "assert.strictEqual(largestPrimeFactor(5), 5, 'message: <code>largestPrimeFactor(5)</code> should return 5.');",
        "assert.strictEqual(largestPrimeFactor(7), 7, 'message: <code>largestPrimeFactor(7)</code> should return 7.');",
        "assert.strictEqual(largestPrimeFactor(13195), 29, 'message: <code>largestPrimeFactor(13195)</code> should return 29.');",
        "assert.strictEqual(largestPrimeFactor(600851475143), 6857, 'message: <code>largestPrimeFactor(600851475143)</code> should return 6857.');"
      ],
      "solutions": [
        "const largestPrimeFactor = (number)=>{\n  let largestFactor = number;\n  for(let i = 2;i<largestFactor;i++){\n  if(!(largestFactor%i)){\n    largestFactor = largestFactor/i;\n    largestPrimeFactor(largestFactor);\n  }\n  }\n  return largestFactor;\n}"
      ],
      "translations": {},
      "challengeSeed": [
        "function largestPrimeFactor(number) {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "largestPrimeFactor(13195);"
      ],
      "description": [
        "The prime factors of 13195 are 5, 7, 13 and 29.",
        "What is the largest prime factor of the number 600851475143 ?"
      ]
    },
    {
      "id": "5900f3701000cf542c50fe83",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 4: Largest palindrome product",
      "tests": [
        "assert.strictEqual(largestPalindromeProduct(2), 9009, 'message: <code>largestPalindromeProduct(2)</code> should return 9009.');",
        "assert.strictEqual(largestPalindromeProduct(3), 906609, 'message: <code>largestPalindromeProduct(3)</code> should return 906609.');"
      ],
      "solutions": [
        "const largestPalindromeProduct = (digit)=>{\n  let start = 1;\n  let end = Number(`1e${digit}`) - 1;\n let palindrome = [];\n  for(let i=start;i<=end;i++){\n    for(let j=start;j<=end;j++){\n      let product = i*j;\n      let palindromeRegex = /\\b(\\d)(\\d?)(\\d?).?\\3\\2\\1\\b/gi;\n      palindromeRegex.test(product) && palindrome.push(product);\n    }\n }\n return Math.max(...palindrome);\n}"
      ],
      "translations": {},
      "challengeSeed": [
        "function largestPalindromeProduct(digit) {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "largestPalindromeProduct(3);"
      ],
      "description": [
        "A palindromic number reads the same both ways. The largest palindrome made from the product of two 2-digit numbers is 9009 = 91 × 99.",
        "Find the largest palindrome made from the product of two 3-digit numbers."
      ]
    },
    {
      "id": "5900f3711000cf542c50fe84",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 5: Smallest multiple",
      "tests": [
        "assert.strictEqual(smallestMult(5), 60, 'message: <code>smallestMult(5)</code> should return 60.');",
        "assert.strictEqual(smallestMult(10), 2520, 'message: <code>smallestMult(10)</code> should return 2520.');",
        "assert.strictEqual(smallestMult(20), 232792560, 'message: <code>smallestMult(20)</code> should return 232792560.');"
      ],
      "solutions": ["function smallestMult(n){\n  function gcd(a, b) {\n    return b === 0 ? a : gcd(b, a%b); // Euclidean algorithm\n  }\n\n  function lcm(a, b) {\n    return a * b / gcd(a, b);\n  }\n  var result = 1;\n  for(var i = 2; i <= n; i++) {\n    result = lcm(result, i);\n  }\n  return result;\n}"],
      "translations": {},
      "challengeSeed": [
        "function smallestMult(n) {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "smallestMult(20);"
      ],
      "description": [
        "2520 is the smallest number that can be divided by each of the numbers from 1 to 10 without any remainder.",
        "What is the smallest positive number that is evenly divisible by all of the numbers from 1 to 20?"
      ]
    },
    {
      "id": "5900f3721000cf542c50fe85",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 6: Sum square difference",
      "tests": [
        "assert.strictEqual(sumSquareDifference(10), 2640, 'message: <code>sumSquareDifference(10)</code> should return 2640.');",
        "assert.strictEqual(sumSquareDifference(20), 41230, 'message: <code>sumSquareDifference(20)</code> should return 41230.');",
        "assert.strictEqual(sumSquareDifference(100), 25164150, 'message: <code>sumSquareDifference(100)</code> should return 25164150.');"
      ],
      "solutions": [
        "const sumSquareDifference = (number)=>{\n  let squareOfSum = Math.pow(sumOfArithmeticSeries(1,1,number),2);\n  let sumOfSquare = sumOfSquareOfNumbers(number);\n return squareOfSum - sumOfSquare;\n}\n\nfunction sumOfArithmeticSeries(a,d,n){\n  return (n/2)*(2*a+(n-1)*d);\n}\n\nfunction sumOfSquareOfNumbers(n){\n return (n*(n+1)*(2*n+1))/6;\n}"
      ],
      "translations": {},
      "challengeSeed": [
        "function sumSquareDifference(number) {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "sumSquareDifference(100);"
      ],
      "description": [
        "The sum of the squares of the first ten natural numbers is,",
        "1² + 2² + ... + 10² = 385",
        "The square of the sum of the first ten natural numbers is,",
        "(1 + 2 + ... + 10)² = 55² = 3025",
        "Hence the difference between the sum of the squares of the first ten natural numbers and the square of the sum is 3025 − 385 = 2640.",
        "Find the difference between the sum of the squares of the first one hundred natural numbers and the square of the sum."
      ]
    },
    {
      "id": "5900f3731000cf542c50fe86",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 7: 10001st prime",
      "tests": [
        "assert.strictEqual(nthPrime(6), 13, 'message: <code>nthPrime(6)</code> should return 13.');",
        "assert.strictEqual(nthPrime(10), 29, 'message: <code>nthPrime(10)</code> should return 29.');",
        "assert.strictEqual(nthPrime(100), 541, 'message: <code>nthPrime(100)</code> should return 541.');",
        "assert.strictEqual(nthPrime(1000), 7919, 'message: <code>nthPrime(1000)</code> should return 7919.');",
        "assert.strictEqual(nthPrime(10001), 104743, 'message: <code>nthPrime(10001)</code> should return 104743.');"
      ],
      "solutions": [
        "const nthPrime = (number)=>{\n let pN = 2;\n let step = 0;\n while (step<number) {\n   let isPrime = true;\n   for(let i = 2;i<pN;i++){\n      if(!(pN%i)){\n        isPrime = false;\n        break;\n      }\n   }\n   isPrime ? step++ : '';\n    pN++;\n }\n return pN-1;\n}"
      ],
      "translations": {},
      "challengeSeed": [
        "function nthPrime(number) {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "nthPrime(10001);"
      ],
      "description": [
        "By listing the first six prime numbers: 2, 3, 5, 7, 11, and 13, we can see that the 6th prime is 13.",
        "What is the 10 001st prime number?"
      ]
    },
    {
      "id": "5900f3741000cf542c50fe87",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 8: Largest product in a series",
      "tests": [
        "assert.strictEqual(largestProductinaSeries(4), 5832, 'message: <code>largestProductinaSeries(4)</code> should return 5832.');",
        "assert.strictEqual(largestProductinaSeries(13), 23514624000, 'message: <code>largestProductinaSeries(13)</code> should return 23514624000.');"
      ],
      "solutions": [
        "const largestProductinaSeries = (number)=>{\n  let thousandDigits = [7,3,1,6,7,1,7,6,5,3,1,3,3,0,6,2,4,9,1,9,2,2,5,1,1,9,6,7,4,4,2,6,5,7,4,7,4,2,3,5,5,3,4,9,1,9,4,9,3,4,9,6,9,8,3,5,2,0,3,1,2,7,7,4,5,0,6,3,2,6,2,3,9,5,7,8,3,1,8,0,1,6,9,8,4,8,0,1,8,6,9,4,7,8,8,5,1,8,4,3,8,5,8,6,1,5,6,0,7,8,9,1,1,2,9,4,9,4,9,5,4,5,9,5,0,1,7,3,7,9,5,8,3,3,1,9,5,2,8,5,3,2,0,8,8,0,5,5,1,1,1,2,5,4,0,6,9,8,7,4,7,1,5,8,5,2,3,8,6,3,0,5,0,7,1,5,6,9,3,2,9,0,9,6,3,2,9,5,2,2,7,4,4,3,0,4,3,5,5,7,6,6,8,9,6,6,4,8,9,5,0,4,4,5,2,4,4,5,2,3,1,6,1,7,3,1,8,5,6,4,0,3,0,9,8,7,1,1,1,2,1,7,2,2,3,8,3,1,1,3,6,2,2,2,9,8,9,3,4,2,3,3,8,0,3,0,8,1,3,5,3,3,6,2,7,6,6,1,4,2,8,2,8,0,6,4,4,4,4,8,6,6,4,5,2,3,8,7,4,9,3,0,3,5,8,9,0,7,2,9,6,2,9,0,4,9,1,5,6,0,4,4,0,7,7,2,3,9,0,7,1,3,8,1,0,5,1,5,8,5,9,3,0,7,9,6,0,8,6,6,7,0,1,7,2,4,2,7,1,2,1,8,8,3,9,9,8,7,9,7,9,0,8,7,9,2,2,7,4,9,2,1,9,0,1,6,9,9,7,2,0,8,8,8,0,9,3,7,7,6,6,5,7,2,7,3,3,3,0,0,1,0,5,3,3,6,7,8,8,1,2,2,0,2,3,5,4,2,1,8,0,9,7,5,1,2,5,4,5,4,0,5,9,4,7,5,2,2,4,3,5,2,5,8,4,9,0,7,7,1,1,6,7,0,5,5,6,0,1,3,6,0,4,8,3,9,5,8,6,4,4,6,7,0,6,3,2,4,4,1,5,7,2,2,1,5,5,3,9,7,5,3,6,9,7,8,1,7,9,7,7,8,4,6,1,7,4,0,6,4,9,5,5,1,4,9,2,9,0,8,6,2,5,6,9,3,2,1,9,7,8,4,6,8,6,2,2,4,8,2,8,3,9,7,2,2,4,1,3,7,5,6,5,7,0,5,6,0,5,7,4,9,0,2,6,1,4,0,7,9,7,2,9,6,8,6,5,2,4,1,4,5,3,5,1,0,0,4,7,4,8,2,1,6,6,3,7,0,4,8,4,4,0,3,1,9,9,8,9,0,0,0,8,8,9,5,2,4,3,4,5,0,6,5,8,5,4,1,2,2,7,5,8,8,6,6,6,8,8,1,1,6,4,2,7,1,7,1,4,7,9,9,2,4,4,4,2,9,2,8,2,3,0,8,6,3,4,6,5,6,7,4,8,1,3,9,1,9,1,2,3,1,6,2,8,2,4,5,8,6,1,7,8,6,6,4,5,8,3,5,9,1,2,4,5,6,6,5,2,9,4,7,6,5,4,5,6,8,2,8,4,8,9,1,2,8,8,3,1,4,2,6,0,7,6,9,0,0,4,2,2,4,2,1,9,0,2,2,6,7,1,0,5,5,6,2,6,3,2,1,1,1,1,1,0,9,3,7,0,5,4,4,2,1,7,5,0,6,9,4,1,6,5,8,9,6,0,4,0,8,0,7,1,9,8,4,0,3,8,5,0,9,6,2,4,5,5,4,4,4,3,6,2,9,8,1,2,3,0,9,8,7,8,7,9,9,2,7,2,4,4,2,8,4,9,0,9,1,8,8,8,4,5,8,0,1,5,6,1,6,6,0,9,7,9,1,9,1,3,3,8,7,5,4,9,9,2,0,0,5,2,4,0,6,3,6,8,9,9,1,2,5,6,0,7,1,7,6,0,6,0,5,8,8,6,1,1,6,4,6,7,1,0,9,4,0,5,0,7,7,5,4,1,0,0,2,2,5,6,9,8,3,1,5,5,2,0,0,0,5,5,9,3,5,7,2,9,7,2,5,7,1,6,3,6,2,6,9,5,6,1,8,8,2,6,7,0,4,2,8,2,5,2,4,8,3,6,0,0,8,2,3,2,5,7,5,3,0,4,2,0,7,5,2,9,6,3,4,5,0];\n let numberOfDigits = thousandDigits.length;\n let currentIndex = 0;\n let productOfAdjDigits = [];\n\n  while(currentIndex<=(numberOfDigits-number)){\n   let currentAdj = thousandDigits.slice(currentIndex,currentIndex+number);\n    let isAdjDigits = false;\n\n    productOfAdjDigits.push(currentAdj.reduce((prev,cur)=>{\n     return prev*cur;\n    }));\n\n    currentIndex++;\n }\n\n return Math.max(...productOfAdjDigits);\n}"
      ],
      "translations": {},
      "challengeSeed": [
        "function largestProductinaSeries(number) {",
        "  // Good luck!",
        "  let thousandDigits = [7,3,1,6,7,1,7,6,5,3,1,3,3,0,6,2,4,9,1,9,2,2,5,1,1,9,6,7,4,4,2,6,5,7,4,7,4,2,3,5,5,3,4,9,1,9,4,9,3,4,9,6,9,8,3,5,2,0,3,1,2,7,7,4,5,0,6,3,2,6,2,3,9,5,7,8,3,1,8,0,1,6,9,8,4,8,0,1,8,6,9,4,7,8,8,5,1,8,4,3,8,5,8,6,1,5,6,0,7,8,9,1,1,2,9,4,9,4,9,5,4,5,9,5,0,1,7,3,7,9,5,8,3,3,1,9,5,2,8,5,3,2,0,8,8,0,5,5,1,1,1,2,5,4,0,6,9,8,7,4,7,1,5,8,5,2,3,8,6,3,0,5,0,7,1,5,6,9,3,2,9,0,9,6,3,2,9,5,2,2,7,4,4,3,0,4,3,5,5,7,6,6,8,9,6,6,4,8,9,5,0,4,4,5,2,4,4,5,2,3,1,6,1,7,3,1,8,5,6,4,0,3,0,9,8,7,1,1,1,2,1,7,2,2,3,8,3,1,1,3,6,2,2,2,9,8,9,3,4,2,3,3,8,0,3,0,8,1,3,5,3,3,6,2,7,6,6,1,4,2,8,2,8,0,6,4,4,4,4,8,6,6,4,5,2,3,8,7,4,9,3,0,3,5,8,9,0,7,2,9,6,2,9,0,4,9,1,5,6,0,4,4,0,7,7,2,3,9,0,7,1,3,8,1,0,5,1,5,8,5,9,3,0,7,9,6,0,8,6,6,7,0,1,7,2,4,2,7,1,2,1,8,8,3,9,9,8,7,9,7,9,0,8,7,9,2,2,7,4,9,2,1,9,0,1,6,9,9,7,2,0,8,8,8,0,9,3,7,7,6,6,5,7,2,7,3,3,3,0,0,1,0,5,3,3,6,7,8,8,1,2,2,0,2,3,5,4,2,1,8,0,9,7,5,1,2,5,4,5,4,0,5,9,4,7,5,2,2,4,3,5,2,5,8,4,9,0,7,7,1,1,6,7,0,5,5,6,0,1,3,6,0,4,8,3,9,5,8,6,4,4,6,7,0,6,3,2,4,4,1,5,7,2,2,1,5,5,3,9,7,5,3,6,9,7,8,1,7,9,7,7,8,4,6,1,7,4,0,6,4,9,5,5,1,4,9,2,9,0,8,6,2,5,6,9,3,2,1,9,7,8,4,6,8,6,2,2,4,8,2,8,3,9,7,2,2,4,1,3,7,5,6,5,7,0,5,6,0,5,7,4,9,0,2,6,1,4,0,7,9,7,2,9,6,8,6,5,2,4,1,4,5,3,5,1,0,0,4,7,4,8,2,1,6,6,3,7,0,4,8,4,4,0,3,1,9,9,8,9,0,0,0,8,8,9,5,2,4,3,4,5,0,6,5,8,5,4,1,2,2,7,5,8,8,6,6,6,8,8,1,1,6,4,2,7,1,7,1,4,7,9,9,2,4,4,4,2,9,2,8,2,3,0,8,6,3,4,6,5,6,7,4,8,1,3,9,1,9,1,2,3,1,6,2,8,2,4,5,8,6,1,7,8,6,6,4,5,8,3,5,9,1,2,4,5,6,6,5,2,9,4,7,6,5,4,5,6,8,2,8,4,8,9,1,2,8,8,3,1,4,2,6,0,7,6,9,0,0,4,2,2,4,2,1,9,0,2,2,6,7,1,0,5,5,6,2,6,3,2,1,1,1,1,1,0,9,3,7,0,5,4,4,2,1,7,5,0,6,9,4,1,6,5,8,9,6,0,4,0,8,0,7,1,9,8,4,0,3,8,5,0,9,6,2,4,5,5,4,4,4,3,6,2,9,8,1,2,3,0,9,8,7,8,7,9,9,2,7,2,4,4,2,8,4,9,0,9,1,8,8,8,4,5,8,0,1,5,6,1,6,6,0,9,7,9,1,9,1,3,3,8,7,5,4,9,9,2,0,0,5,2,4,0,6,3,6,8,9,9,1,2,5,6,0,7,1,7,6,0,6,0,5,8,8,6,1,1,6,4,6,7,1,0,9,4,0,5,0,7,7,5,4,1,0,0,2,2,5,6,9,8,3,1,5,5,2,0,0,0,5,5,9,3,5,7,2,9,7,2,5,7,1,6,3,6,2,6,9,5,6,1,8,8,2,6,7,0,4,2,8,2,5,2,4,8,3,6,0,0,8,2,3,2,5,7,5,3,0,4,2,0,7,5,2,9,6,3,4,5,0];",
        "  return true;",
        "}",
        "",
        "largestProductinaSeries(13);"
      ],
      "description": [
        "The four adjacent digits in the 1000-digit number that have the greatest product are 9 × 9 × 8 × 9 = 5832.",
        "",
        "73167176531330624919225119674426574742355349194934",
        "96983520312774506326239578318016984801869478851843",
        "85861560789112949495459501737958331952853208805511",
        "12540698747158523863050715693290963295227443043557",
        "66896648950445244523161731856403098711121722383113",
        "62229893423380308135336276614282806444486645238749",
        "30358907296290491560440772390713810515859307960866",
        "70172427121883998797908792274921901699720888093776",
        "65727333001053367881220235421809751254540594752243",
        "52584907711670556013604839586446706324415722155397",
        "53697817977846174064955149290862569321978468622482",
        "83972241375657056057490261407972968652414535100474",
        "82166370484403199890008895243450658541227588666881",
        "16427171479924442928230863465674813919123162824586",
        "17866458359124566529476545682848912883142607690042",
        "24219022671055626321111109370544217506941658960408",
        "07198403850962455444362981230987879927244284909188",
        "84580156166097919133875499200524063689912560717606",
        "05886116467109405077541002256983155200055935729725",
        "71636269561882670428252483600823257530420752963450",
        "Find the thirteen adjacent digits in the 1000-digit number that have the greatest product. What is the value of this product?"
      ]
    },
    {
      "id": "5900f3761000cf542c50fe88",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 9: Special Pythagorean triplet",
      "tests": [
        "assert.strictEqual(specialPythagoreanTriplet(1000), 31875000, 'message: <code>specialPythagoreanTriplet(1000)</code> should return 31875000.');",
        "assert.strictEqual(specialPythagoreanTriplet(24), 480, 'message: <code>specialPythagoreanTriplet(24)</code> should return 480.');",
        "assert.strictEqual(specialPythagoreanTriplet(120), 49920, 'message: <code>specialPythagoreanTriplet(120)</code> should return 49920.');"
      ],
      "solutions": [
        "const specialPythagoreanTriplet = (n)=>{\n let sumOfabc = n;\n let a,b,c;\n for(a = 1; a<=sumOfabc/3; a++){\n for(b = a+1; b<=sumOfabc/2; b++){\n c = Math.sqrt(a*a+b*b);\n if((a+b+c) == sumOfabc){\n return a*b*c;\n }\n }\n }\n}"
      ],
      "translations": {},
      "challengeSeed": [
        "function specialPythagoreanTriplet(n) {",
        " let sumOfabc = n;", " // Good luck!",
        " return true;", "}",
        "",
        "specialPythagoreanTriplet(1000);"
      ],
      "description": [
        "A Pythagorean triplet is a set of three natural numbers, a < b < c, for which,",
        " a² + b² = c²",
        "For example, 3² + 4² = 9 + 16 = 25 = 5².",
        "There exists exactly one Pythagorean triplet for which a + b + c = 1000. Find the product abc."
      ]
    },
    {
      "id": "5900f3761000cf542c50fe89",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 10: Summation of primes",
      "tests": [
        "assert.strictEqual(primeSummation(17), 41, 'message: <code>primeSummation(17)</code> should return 41.');",
        "assert.strictEqual(primeSummation(2001), 277050, 'message: <code>primeSummation(2001)</code> should return 277050.');",
        "assert.strictEqual(primeSummation(140759), 873608362, 'message: <code>primeSummation(140759)</code> should return 873608362.');",
        "assert.strictEqual(primeSummation(2000000), 142913828922, 'message: <code>primeSummation(2000000)</code> should return 142913828922.');"
      ],
      "solutions": ["//noprotect\nfunction primeSummation(n) {\n  // Initialise an array containing only prime numbers\n  let primes = [2];\n  let result = 2;\n\n  function isPrime(y, primes) {\n    // Find sqrt(y)\n    const sqrt = Math.floor(Math.sqrt(y));\n\n    // Divide y by each applicable prime, return false if any of them divide y\n    for (let i = 0; i < primes.length && primes[i] <= sqrt; i++) {\n      if (y % primes[i] === 0) {\n        return false;\n      }\n    }\n\n    // At this point x must be prime\n    return true;\n  }\n\n  // For every odd integer, add it to the array if it is prime\n  for (let x = 3; x < n; x += 2) {\n    if (isPrime(x, primes)) {\n      if (x > n) {\n        return result;\n      } else {\n        result += x;\n        primes.push(x);\n      }\n    }\n  }\n\n  return result;\n}"],
      "translations": {},
      "challengeSeed": [
        "function primeSummation(n) {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "primeSummation(2000000);"
      ],
      "description": [
        "The sum of the primes below 10 is 2 + 3 + 5 + 7 = 17.",
        "Find the sum of all the primes below n."
      ]
    },
    {
      "id": "5900f3781000cf542c50fe8a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 11: Largest product in a grid",
      "tests": [
        "assert.strictEqual(largestGridProduct(grid), 70600674, 'message: <code>largestGridProduct(grid)</code> should return 70600674.');",
        "assert.strictEqual(largestGridProduct(testGrid), 14169081, 'message: <code>largestGridProduct(testGrid)</code> should return 14169081.');"
      ],
      "solutions": ["function largestGridProduct(arr) {\n  let maxProduct = 0;\n  let currProduct = 0;\n\n  function maxProductChecker(n) {\n    if (n > maxProduct) {\n      return maxProduct = n;\n    }\n  }\n\n  // loop rows\n  for (let r = 0; r < arr.length; r++) {\n    // loop columns\n    for (let c = 0; c < arr[r].length; c++) {\n      const limit = arr[r].length - 3;\n\n      // check horizontal\n      if (c < limit) {\n        currProduct = arr[r][c] * arr[r][c + 1] * arr[r][c + 2] * arr[r][c + 3];\n        maxProductChecker(currProduct);\n      }\n\n      // check vertical\n      if (r < limit) {\n        currProduct = arr[r][c] * arr[r + 1][c] * arr[r + 2][c] * arr[r + 3][c];\n        maxProductChecker(currProduct);\n      }\n\n      // check diagonal [\\]\n      if (c < limit && r < limit) {\n        currProduct = arr[r][c] * arr[r + 1][c + 1] * arr[r + 2][c + 2] * arr[r + 3][c + 3];\n        maxProductChecker(currProduct);\n      }\n\n      // check diagonal [/]\n      if (c > 3 && r < limit) {\n        currProduct = arr[r][c] * arr[r + 1][c - 1] * arr[r + 2][c - 2] * arr[r + 3][c - 3];\n        maxProductChecker(currProduct);\n      }\n    }\n  }\n\n  return maxProduct;\n}\n\n const grid = [  [8, 2, 22, 97, 38, 15, 0, 40, 0, 75, 4, 5, 7, 78, 52, 12, 50, 77, 91, 8],\n  [49, 49, 99, 40, 17, 81, 18, 57, 60, 87, 17, 40, 98, 43, 69, 48, 4, 56, 62, 0],\n  [81, 49, 31, 73, 55, 79, 14, 29, 93, 71, 40, 67, 53, 88, 30, 3, 49, 13, 36, 65],\n  [52, 70, 95, 23, 4, 60, 11, 42, 69, 24, 68, 56, 1, 32, 56, 71, 37, 2, 36, 91],\n  [22, 31, 16, 71, 51, 67, 63, 89, 41, 92, 36, 54, 22, 40, 40, 28, 66, 33, 13, 80],\n  [24, 47, 32, 60, 99, 3, 45, 2, 44, 75, 33, 53, 78, 36, 84, 20, 35, 17, 12, 50],\n  [32, 98, 81, 28, 64, 23, 67, 10, 26, 38, 40, 67, 59, 54, 70, 66, 18, 38, 64, 70],\n  [67, 26, 20, 68, 2, 62, 12, 20, 95, 63, 94, 39, 63, 8, 40, 91, 66, 49, 94, 21],\n  [24, 55, 58, 5, 66, 73, 99, 26, 97, 17, 78, 78, 96, 83, 14, 88, 34, 89, 63, 72],\n  [21, 36, 23, 9, 75, 0, 76, 44, 20, 45, 35, 14, 0, 61, 33, 97, 34, 31, 33, 95],\n  [78, 17, 53, 28, 22, 75, 31, 67, 15, 94, 3, 80, 4, 62, 16, 14, 9, 53, 56, 92],\n  [16, 39, 5, 42, 96, 35, 31, 47, 55, 58, 88, 24, 0, 17, 54, 24, 36, 29, 85, 57],\n  [86, 56, 0, 48, 35, 71, 89, 7, 5, 44, 44, 37, 44, 60, 21, 58, 51, 54, 17, 58],\n  [19, 80, 81, 68, 5, 94, 47, 69, 28, 73, 92, 13, 86, 52, 17, 77, 4, 89, 55, 40],\n  [4, 52, 8, 83, 97, 35, 99, 16, 7, 97, 57, 32, 16, 26, 26, 79, 33, 27, 98, 66],\n  [88, 36, 68, 87, 57, 62, 20, 72, 3, 46, 33, 67, 46, 55, 12, 32, 63, 93, 53, 69],\n  [4, 42, 16, 73, 38, 25, 39, 11, 24, 94, 72, 18, 8, 46, 29, 32, 40, 62, 76, 36],\n  [20, 69, 36, 41, 72, 30, 23, 88, 34, 62, 99, 69, 82, 67, 59, 85, 74, 4, 36, 16],\n  [20, 73, 35, 29, 78, 31, 90, 1, 74, 31, 49, 71, 48, 86, 81, 16, 23, 57, 5, 54],\n  [1, 70, 54, 71, 83, 51, 54, 69, 16, 92, 33, 48, 61, 43, 52, 1, 89, 19, 67, 48]\n];\n\nconst testGrid = [\n  [40, 17, 81, 18, 57],\n  [74, 4, 36, 16, 29],\n  [36, 42, 69, 73, 45],\n  [51, 54, 69, 16, 92],\n  [7, 97, 57, 32, 16]\n];"],
      "translations": {},
      "challengeSeed": [
        "function largestGridProduct(arr) {",
        "  // Good luck!",
        "  return arr;",
        "}",
        "",
        "// Only change code above this line",
        "const grid = [",
          "  [8, 2, 22, 97, 38, 15, 0, 40, 0, 75, 4, 5, 7, 78, 52, 12, 50, 77, 91, 8],",
          "  [49, 49, 99, 40, 17, 81, 18, 57, 60, 87, 17, 40, 98, 43, 69, 48, 4, 56, 62, 0],",
          "  [81, 49, 31, 73, 55, 79, 14, 29, 93, 71, 40, 67, 53, 88, 30, 3, 49, 13, 36, 65],",
          "  [52, 70, 95, 23, 4, 60, 11, 42, 69, 24, 68, 56, 1, 32, 56, 71, 37, 2, 36, 91],",
          "  [22, 31, 16, 71, 51, 67, 63, 89, 41, 92, 36, 54, 22, 40, 40, 28, 66, 33, 13, 80],",
          "  [24, 47, 32, 60, 99, 3, 45, 2, 44, 75, 33, 53, 78, 36, 84, 20, 35, 17, 12, 50],",
          "  [32, 98, 81, 28, 64, 23, 67, 10, 26, 38, 40, 67, 59, 54, 70, 66, 18, 38, 64, 70],",
          "  [67, 26, 20, 68, 2, 62, 12, 20, 95, 63, 94, 39, 63, 8, 40, 91, 66, 49, 94, 21],",
          "  [24, 55, 58, 5, 66, 73, 99, 26, 97, 17, 78, 78, 96, 83, 14, 88, 34, 89, 63, 72],",
          "  [21, 36, 23, 9, 75, 0, 76, 44, 20, 45, 35, 14, 0, 61, 33, 97, 34, 31, 33, 95],",
          "  [78, 17, 53, 28, 22, 75, 31, 67, 15, 94, 3, 80, 4, 62, 16, 14, 9, 53, 56, 92],",
          "  [16, 39, 5, 42, 96, 35, 31, 47, 55, 58, 88, 24, 0, 17, 54, 24, 36, 29, 85, 57],",
          "  [86, 56, 0, 48, 35, 71, 89, 7, 5, 44, 44, 37, 44, 60, 21, 58, 51, 54, 17, 58],",
          "  [19, 80, 81, 68, 5, 94, 47, 69, 28, 73, 92, 13, 86, 52, 17, 77, 4, 89, 55, 40],",
          "  [4, 52, 8, 83, 97, 35, 99, 16, 7, 97, 57, 32, 16, 26, 26, 79, 33, 27, 98, 66],",
          "  [88, 36, 68, 87, 57, 62, 20, 72, 3, 46, 33, 67, 46, 55, 12, 32, 63, 93, 53, 69],",
          "  [4, 42, 16, 73, 38, 25, 39, 11, 24, 94, 72, 18, 8, 46, 29, 32, 40, 62, 76, 36],",
          "  [20, 69, 36, 41, 72, 30, 23, 88, 34, 62, 99, 69, 82, 67, 59, 85, 74, 4, 36, 16],",
          "  [20, 73, 35, 29, 78, 31, 90, 1, 74, 31, 49, 71, 48, 86, 81, 16, 23, 57, 5, 54],",
          "  [1, 70, 54, 71, 83, 51, 54, 69, 16, 92, 33, 48, 61, 43, 52, 1, 89, 19, 67, 48]",
        "];",
        "",
        "const testGrid = [",
          "  [40, 17, 81, 18, 57],",
          "  [74, 4, 36, 16, 29],",
          "  [36, 42, 69, 73, 45],",
          "  [51, 54, 69, 16, 92],",
          "  [7, 97, 57, 32, 16]",
        "];",
        "",
        "largestGridProduct(testGrid);"
      ],
      "description": [
        "In the 20×20 grid below, four numbers along a diagonal line have been marked in red.",
        "",
        "08 02 22 97 38 15 00 40 00 75 04 05 07 78 52 12 50 77 91 08",
        "49 49 99 40 17 81 18 57 60 87 17 40 98 43 69 48 04 56 62 00",
        "81 49 31 73 55 79 14 29 93 71 40 67 53 88 30 03 49 13 36 65",
        "52 70 95 23 04 60 11 42 69 24 68 56 01 32 56 71 37 02 36 91",
        "22 31 16 71 51 67 63 89 41 92 36 54 22 40 40 28 66 33 13 80",
        "24 47 32 60 99 03 45 02 44 75 33 53 78 36 84 20 35 17 12 50",
        "32 98 81 28 64 23 67 10 <span style='color: red'><b>26</b></span> 38 40 67 59 54 70 66 18 38 64 70",
        "67 26 20 68 02 62 12 20 95 <span style='color: red'><b>63</b></span> 94 39 63 08 40 91 66 49 94 21",
        "24 55 58 05 66 73 99 26 97 17 <span style='color: red'><b>78</b></span> 78 96 83 14 88 34 89 63 72",
        "21 36 23 09 75 00 76 44 20 45 35 <span style='color: red'><b>14</b></span> 00 61 33 97 34 31 33 95",
        "78 17 53 28 22 75 31 67 15 94 03 80 04 62 16 14 09 53 56 92",
        "16 39 05 42 96 35 31 47 55 58 88 24 00 17 54 24 36 29 85 57",
        "86 56 00 48 35 71 89 07 05 44 44 37 44 60 21 58 51 54 17 58",
        "19 80 81 68 05 94 47 69 28 73 92 13 86 52 17 77 04 89 55 40",
        "04 52 08 83 97 35 99 16 07 97 57 32 16 26 26 79 33 27 98 66",
        "88 36 68 87 57 62 20 72 03 46 33 67 46 55 12 32 63 93 53 69",
        "04 42 16 73 38 25 39 11 24 94 72 18 08 46 29 32 40 62 76 36",
        "20 69 36 41 72 30 23 88 34 62 99 69 82 67 59 85 74 04 36 16",
        "20 73 35 29 78 31 90 01 74 31 49 71 48 86 81 16 23 57 05 54",
        "01 70 54 71 83 51 54 69 16 92 33 48 61 43 52 01 89 19 67 48",
        "The product of these numbers is 26 × 63 × 78 × 14 = 1788696.",
        "What is the greatest product of four adjacent numbers in the same direction (up, down, left, right, or diagonally) in the 20×20 grid?"
      ]
    },
    {
      "id": "5900f3781000cf542c50fe8b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 12: Highly divisible triangular number",
      "tests": [
        "assert.strictEqual(divisibleTriangleNumber(5), 28, 'message: <code>divisibleTriangleNumber(5)</code> should return 28.');",
        "assert.strictEqual(divisibleTriangleNumber(23), 630, 'message: <code>divisibleTriangleNumber(23)</code> should return 630.');",
        "assert.strictEqual(divisibleTriangleNumber(500), 76576500, 'message: <code>divisibleTriangleNumber()</code> should return 76576500.');"
      ],
      "solutions": ["function divisibleTriangleNumber(n) {\n  let counter = 1;\n  let triangleNumber = counter++;\n\n  function getFactors(num) {\n    let factors = [];\n\n    let possibleFactor = 1;\n    let sqrt = Math.sqrt(num);\n\n    while (possibleFactor <= sqrt) {\n      if (num % possibleFactor == 0) {\n        factors.push(possibleFactor);\n        var otherPossibleFactor = num / possibleFactor;\n        if (otherPossibleFactor > possibleFactor) {\n          factors.push(otherPossibleFactor);\n        }\n      }\n      possibleFactor++;\n    }\n\n    return factors;\n  }\n\n  while (getFactors(triangleNumber).length < n) {\n    triangleNumber += counter++;\n  }\n  console.log(triangleNumber)\n  return triangleNumber;\n}"],
      "translations": {},
      "challengeSeed": [
        "function divisibleTriangleNumber(n) {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "divisibleTriangleNumber(500);"
      ],
      "description": [
        "The sequence of triangle numbers is generated by adding the natural numbers. So the 7th triangle number would be 1 + 2 + 3 + 4 + 5 + 6 + 7 = 28. The first ten terms would be:",
        "1, 3, 6, 10, 15, 21, 28, 36, 45, 55, ...",
        "Let us list the factors of the first seven triangle numbers:",
        "<b>1:</b> 1",
        "<b>3:</b> 1, 3",
        "<b>6:</b> 1, 2, 3, 6",
        "<b>10:</b> 1, 2, 5, 10",
        "<b>15:</b> 1, 3, 5, 15",
        "<b>21:</b> 1, 3, 7, 21",
        "<b>28:</b> 1, 2, 4, 7, 14, 28",
        "We can see that 28 is the first triangle number to have over five divisors.",
        "What is the value of the first triangle number to have over five hundred divisors?"
      ]
    },
    {
      "id": "5900f37a1000cf542c50fe8c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 13: Large sum",
      "tests": [
        "assert.strictEqual(largeSum(testNums), 8348422521, 'message: <code>largeSum(testNums)</code> should return 8348422521.');",
        "assert.strictEqual(largeSum(fiftyDigitNums), 5537376230, 'message: <code>largeSum(fiftyDigitNums)</code> should return 5537376230.');"
      ],
      "solutions": ["function largeSum(arr) {\n\n  let sum = 0;\n\n  arr.forEach(function(num) {\n    sum += parseInt(num, 10);\n  });\n\n  sum = sum.toString(10);\n\n  sum = sum.substr(0, 1) + sum.substr(2);\n\n  let firstTen = sum.slice(0, 10);\n  return parseInt(firstTen, 10);\n}"],
      "translations": {},
      "head": [
        "const fiftyDigitNums = [",
        "  '37107287533902102798797998220837590246510135740250',",
        "  '46376937677490009712648124896970078050417018260538',",
        "  '74324986199524741059474233309513058123726617309629',",
        "  '91942213363574161572522430563301811072406154908250',",
        "  '23067588207539346171171980310421047513778063246676',",
        "  '89261670696623633820136378418383684178734361726757',",
        "  '28112879812849979408065481931592621691275889832738',",
        "  '44274228917432520321923589422876796487670272189318',",
        "  '47451445736001306439091167216856844588711603153276',",
        "  '70386486105843025439939619828917593665686757934951',",
        "  '62176457141856560629502157223196586755079324193331',",
        "  '64906352462741904929101432445813822663347944758178',",
        "  '92575867718337217661963751590579239728245598838407',",
        "  '58203565325359399008402633568948830189458628227828',",
        "  '80181199384826282014278194139940567587151170094390',",
        "  '35398664372827112653829987240784473053190104293586',",
        "  '86515506006295864861532075273371959191420517255829',",
        "  '71693888707715466499115593487603532921714970056938',",
        "  '54370070576826684624621495650076471787294438377604',",
        "  '53282654108756828443191190634694037855217779295145',",
        "  '36123272525000296071075082563815656710885258350721',",
        "  '45876576172410976447339110607218265236877223636045',",
        "  '17423706905851860660448207621209813287860733969412',",
        "  '81142660418086830619328460811191061556940512689692',",
        "  '51934325451728388641918047049293215058642563049483',",
        "  '62467221648435076201727918039944693004732956340691',",
        "  '15732444386908125794514089057706229429197107928209',",
        "  '55037687525678773091862540744969844508330393682126',",
        "  '18336384825330154686196124348767681297534375946515',",
        "  '80386287592878490201521685554828717201219257766954',",
        "  '78182833757993103614740356856449095527097864797581',",
        "  '16726320100436897842553539920931837441497806860984',",
        "  '48403098129077791799088218795327364475675590848030',",
        "  '87086987551392711854517078544161852424320693150332',",
        "  '59959406895756536782107074926966537676326235447210',",
        "  '69793950679652694742597709739166693763042633987085',",
        "  '41052684708299085211399427365734116182760315001271',",
        "  '65378607361501080857009149939512557028198746004375',",
        "  '35829035317434717326932123578154982629742552737307',",
        "  '94953759765105305946966067683156574377167401875275',",
        "  '88902802571733229619176668713819931811048770190271',",
        "  '25267680276078003013678680992525463401061632866526',",
        "  '36270218540497705585629946580636237993140746255962',",
        "  '24074486908231174977792365466257246923322810917141',",
        "  '91430288197103288597806669760892938638285025333403',",
        "  '34413065578016127815921815005561868836468420090470',",
        "  '23053081172816430487623791969842487255036638784583',",
        "  '11487696932154902810424020138335124462181441773470',",
        "  '63783299490636259666498587618221225225512486764533',",
        "  '67720186971698544312419572409913959008952310058822',",
        "  '95548255300263520781532296796249481641953868218774',",
        "  '76085327132285723110424803456124867697064507995236',",
        "  '37774242535411291684276865538926205024910326572967',",
        "  '23701913275725675285653248258265463092207058596522',",
        "  '29798860272258331913126375147341994889534765745501',",
        "  '18495701454879288984856827726077713721403798879715',",
        "  '38298203783031473527721580348144513491373226651381',",
        "  '34829543829199918180278916522431027392251122869539',",
        "  '40957953066405232632538044100059654939159879593635',",
        "  '29746152185502371307642255121183693803580388584903',",
        "  '41698116222072977186158236678424689157993532961922',",
        "  '62467957194401269043877107275048102390895523597457',",
        "  '23189706772547915061505504953922979530901129967519',",
        "  '86188088225875314529584099251203829009407770775672',",
        "  '11306739708304724483816533873502340845647058077308',",
        "  '82959174767140363198008187129011875491310547126581',",
        "  '97623331044818386269515456334926366572897563400500',",
        "  '42846280183517070527831839425882145521227251250327',",
        "  '55121603546981200581762165212827652751691296897789',",
        "  '32238195734329339946437501907836945765883352399886',",
        "  '75506164965184775180738168837861091527357929701337',",
        "  '62177842752192623401942399639168044983993173312731',",
        "  '32924185707147349566916674687634660915035914677504',",
        "  '99518671430235219628894890102423325116913619626622',",
        "  '73267460800591547471830798392868535206946944540724',",
        "  '76841822524674417161514036427982273348055556214818',",
        "  '97142617910342598647204516893989422179826088076852',",
        "  '87783646182799346313767754307809363333018982642090',",
        "  '10848802521674670883215120185883543223812876952786',",
        "  '71329612474782464538636993009049310363619763878039',",
        "  '62184073572399794223406235393808339651327408011116',",
        "  '66627891981488087797941876876144230030984490851411',",
        "  '60661826293682836764744779239180335110989069790714',",
        "  '85786944089552990653640447425576083659976645795096',",
        "  '66024396409905389607120198219976047599490197230297',",
        "  '64913982680032973156037120041377903785566085089252',",
        "  '16730939319872750275468906903707539413042652315011',",
        "  '94809377245048795150954100921645863754710598436791',",
        "  '78639167021187492431995700641917969777599028300699',",
        "  '15368713711936614952811305876380278410754449733078',",
        "  '40789923115535562561142322423255033685442488917353',",
        "  '44889911501440648020369068063960672322193204149535',",
        "  '41503128880339536053299340368006977710650566631954',",
        "  '81234880673210146739058568557934581403627822703280',",
        "  '82616570773948327592232845941706525094512325230608',",
        "  '22918802058777319719839450180888072429661980811197',",
        "  '77158542502016545090413245809786882778948721859617',",
        "  '72107838435069186155435662884062257473692284509516',",
        "  '20849603980134001723930671666823555245252804609722',",
        "  '53503534226472524250874054075591789781264330331690'",
        "];",
        "",
        "const testNums = [",
        "  '37107287533902102798797998220837590246510135740250',",
        "  '46376937677490009712648124896970078050417018260538'",
        "];"
      ],
      "challengeSeed": [
        "function largeSum(arr) {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "// only change code above this line",
        "",
        "const testNums = [",
        "  '37107287533902102798797998220837590246510135740250',",
        "  '46376937677490009712648124896970078050417018260538'",
        "];",
        "",
        "largeSum(testNums);"
      ],
      "description": [
        "Work out the first ten digits of the sum of the following one-hundred 50-digit numbers.",
        "",
        "37107287533902102798797998220837590246510135740250",
        "46376937677490009712648124896970078050417018260538",
        "74324986199524741059474233309513058123726617309629",
        "91942213363574161572522430563301811072406154908250",
        "23067588207539346171171980310421047513778063246676",
        "89261670696623633820136378418383684178734361726757",
        "28112879812849979408065481931592621691275889832738",
        "44274228917432520321923589422876796487670272189318",
        "47451445736001306439091167216856844588711603153276",
        "70386486105843025439939619828917593665686757934951",
        "62176457141856560629502157223196586755079324193331",
        "64906352462741904929101432445813822663347944758178",
        "92575867718337217661963751590579239728245598838407",
        "58203565325359399008402633568948830189458628227828",
        "80181199384826282014278194139940567587151170094390",
        "35398664372827112653829987240784473053190104293586",
        "86515506006295864861532075273371959191420517255829",
        "71693888707715466499115593487603532921714970056938",
        "54370070576826684624621495650076471787294438377604",
        "53282654108756828443191190634694037855217779295145",
        "36123272525000296071075082563815656710885258350721",
        "45876576172410976447339110607218265236877223636045",
        "17423706905851860660448207621209813287860733969412",
        "81142660418086830619328460811191061556940512689692",
        "51934325451728388641918047049293215058642563049483",
        "62467221648435076201727918039944693004732956340691",
        "15732444386908125794514089057706229429197107928209",
        "55037687525678773091862540744969844508330393682126",
        "18336384825330154686196124348767681297534375946515",
        "80386287592878490201521685554828717201219257766954",
        "78182833757993103614740356856449095527097864797581",
        "16726320100436897842553539920931837441497806860984",
        "48403098129077791799088218795327364475675590848030",
        "87086987551392711854517078544161852424320693150332",
        "59959406895756536782107074926966537676326235447210",
        "69793950679652694742597709739166693763042633987085",
        "41052684708299085211399427365734116182760315001271",
        "65378607361501080857009149939512557028198746004375",
        "35829035317434717326932123578154982629742552737307",
        "94953759765105305946966067683156574377167401875275",
        "88902802571733229619176668713819931811048770190271",
        "25267680276078003013678680992525463401061632866526",
        "36270218540497705585629946580636237993140746255962",
        "24074486908231174977792365466257246923322810917141",
        "91430288197103288597806669760892938638285025333403",
        "34413065578016127815921815005561868836468420090470",
        "23053081172816430487623791969842487255036638784583",
        "11487696932154902810424020138335124462181441773470",
        "63783299490636259666498587618221225225512486764533",
        "67720186971698544312419572409913959008952310058822",
        "95548255300263520781532296796249481641953868218774",
        "76085327132285723110424803456124867697064507995236",
        "37774242535411291684276865538926205024910326572967",
        "23701913275725675285653248258265463092207058596522",
        "29798860272258331913126375147341994889534765745501",
        "18495701454879288984856827726077713721403798879715",
        "38298203783031473527721580348144513491373226651381",
        "34829543829199918180278916522431027392251122869539",
        "40957953066405232632538044100059654939159879593635",
        "29746152185502371307642255121183693803580388584903",
        "41698116222072977186158236678424689157993532961922",
        "62467957194401269043877107275048102390895523597457",
        "23189706772547915061505504953922979530901129967519",
        "86188088225875314529584099251203829009407770775672",
        "11306739708304724483816533873502340845647058077308",
        "82959174767140363198008187129011875491310547126581",
        "97623331044818386269515456334926366572897563400500",
        "42846280183517070527831839425882145521227251250327",
        "55121603546981200581762165212827652751691296897789",
        "32238195734329339946437501907836945765883352399886",
        "75506164965184775180738168837861091527357929701337",
        "62177842752192623401942399639168044983993173312731",
        "32924185707147349566916674687634660915035914677504",
        "99518671430235219628894890102423325116913619626622",
        "73267460800591547471830798392868535206946944540724",
        "76841822524674417161514036427982273348055556214818",
        "97142617910342598647204516893989422179826088076852",
        "87783646182799346313767754307809363333018982642090",
        "10848802521674670883215120185883543223812876952786",
        "71329612474782464538636993009049310363619763878039",
        "62184073572399794223406235393808339651327408011116",
        "66627891981488087797941876876144230030984490851411",
        "60661826293682836764744779239180335110989069790714",
        "85786944089552990653640447425576083659976645795096",
        "66024396409905389607120198219976047599490197230297",
        "64913982680032973156037120041377903785566085089252",
        "16730939319872750275468906903707539413042652315011",
        "94809377245048795150954100921645863754710598436791",
        "78639167021187492431995700641917969777599028300699",
        "15368713711936614952811305876380278410754449733078",
        "40789923115535562561142322423255033685442488917353",
        "44889911501440648020369068063960672322193204149535",
        "41503128880339536053299340368006977710650566631954",
        "81234880673210146739058568557934581403627822703280",
        "82616570773948327592232845941706525094512325230608",
        "22918802058777319719839450180888072429661980811197",
        "77158542502016545090413245809786882778948721859617",
        "72107838435069186155435662884062257473692284509516",
        "20849603980134001723930671666823555245252804609722",
        "53503534226472524250874054075591789781264330331690"
      ]
    },
    {
      "id": "5900f37a1000cf542c50fe8d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 14: Longest Collatz sequence",
      "tests": [
        "assert.strictEqual(longestCollatzSequence(14), 9, 'message: <code>longestCollatzSequence(14)</code> should return 9.');",
        "assert.strictEqual(longestCollatzSequence(5847), 3711, 'message: <code>longestCollatzSequence(5847)</code> should return 3711.');",
        "assert.strictEqual(longestCollatzSequence(1000000), 837799, 'message: <code>longestCollatzSequence(1000000)</code> should return 837799.');"
      ],
      "solutions": ["function longestCollatzSequence(limit) {\n  let longestSequenceLength = 0;\n  let startingNum = 0;\n\n  function sequenceLength(num) {\n    let length = 1;\n\n    while (num >= 1) {\n      if (num === 1) {        break;\n      } else if (num % 2 === 0) {\n        num = num / 2;\n        length++;\n      } else {\n        num = num * 3 + 1;\n        length++;\n      }\n    }\n    return length;\n  }\n\n  for (let i = 2; i < limit; i++) {\n    let currSequenceLength = sequenceLength(i);\n    if (currSequenceLength > longestSequenceLength) {\n      longestSequenceLength = currSequenceLength;\n      startingNum = i;\n    }\n  }\n  return startingNum;\n}"],
      "translations": {},
      "challengeSeed": [
        "function longestCollatzSequence(limit) {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "longestCollatzSequence(14);"
      ],
      "description": [
        "The following iterative sequence is defined for the set of positive integers:",
        "n → n/2 (n is even)n → 3n + 1 (n is odd)",
        "Using the rule above and starting with 13, we generate the following sequence:",
        "13 → 40 → 20 → 10 → 5 → 16 → 8 → 4 → 2 → 1",
        "It can be seen that this sequence (starting at 13 and finishing at 1) contains 10 terms. Although it has not been proved yet (Collatz Problem), it is thought that all starting numbers finish at 1.",
        "Which starting number, under one million, produces the longest chain?",
        "NOTE: Once the chain starts the terms are allowed to go above one million."
      ]
    },
    {
      "id": "5900f37b1000cf542c50fe8e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 15: Lattice paths",
      "tests": [
        "assert.strictEqual(latticePaths(4), 70, 'message: <code>latticePaths(4)</code> should return 70.');",
        "assert.strictEqual(latticePaths(9), 48620, 'message: <code>latticePaths(9)</code> should return 48620.');",
        "assert.strictEqual(latticePaths(20), 137846528820, 'message: <code>latticePaths(20)</code> should return 137846528820.');"
      ],
      "solutions": ["function latticePaths(gridSize) {\n  let paths = 1;\n\n  for (let i = 0; i < gridSize; i++) {\n    paths *= (2 * gridSize) - i;\n    paths /= i + 1;\n  }\n  return paths;\n}"],
      "translations": {},
      "challengeSeed": [
        "function latticePaths(gridSize) {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "latticePaths(4);"
      ],
      "description": [
        "Starting in the top left corner of a 2×2 grid, and only being able to move to the right and down, there are exactly 6 routes to the bottom right corner.",
        "",
        "<img class=\"img-responsive center-block\" alt=\"a diagram of 6 2 by 2 grids showing all the routes to the bottom right corner\" src=\"https://i.imgur.com/1Atixoj.gif\">",
        "",
        "How many such routes are there through a 20×20 grid?"
      ]
    },
    {
      "id": "5900f37d1000cf542c50fe8f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 16: Power digit sum",
      "tests": [
        "assert.strictEqual(powerDigitSum(15), 26, 'message: <code>powerDigitSum(15)</code> should return 26.');",
        "assert.strictEqual(powerDigitSum(128), 166, 'message: <code>powerDigitSum(128)</code> should return 166.');",
        "assert.strictEqual(powerDigitSum(1000), 1366, 'message: <code>powerDigitSum(1000)</code> should return 1366.');"
      ],
      "solutions": ["function powerDigitSum(exponent) {\n  const bigNum = [1];\n  let sum = 0;\n\n  for (let i = 1; i <= exponent; i++) {\n    let count = bigNum.length + 1;\n    let overflow = 0;\n    for (let j = 0; j < count; j++) {\n      let digit = bigNum[j] || 0;\n      digit = 2 * digit + overflow;\n\n      if (digit > 9) {\n        digit -= 10;\n        overflow = 1;\n      } else {\n        overflow = 0;\n      }\n\n      bigNum[j] = digit;\n    }\n  }\n\n  bigNum.forEach(function(num) {\n    return sum += num;\n  });\n\n  return sum;\n}"],
      "translations": {},
      "challengeSeed": [
        "function powerDigitSum(exponent) {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "powerDigitSum(15);"
      ],
      "description": [
        "2¹⁵ = 32768 and the sum of its digits is 3 + 2 + 7 + 6 + 8 = 26.",
        "What is the sum of the digits of the number 2¹⁰⁰⁰?"
      ]
    },
    {
      "id": "5900f37d1000cf542c50fe90",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 17: Number letter counts",
      "tests": [
        "assert.strictEqual(numberLetterCounts(5), 19, 'message: <code>numberLetterCounts(5)</code> should return 19.');",
        "assert.strictEqual(numberLetterCounts(150), 1903, 'message: <code>numberLetterCounts(150)</code> should return 1903.');",
        "assert.strictEqual(numberLetterCounts(1000), 21124, 'message: <code>numberLetterCounts(1000)</code> should return 21124.');"
      ],
      "solutions": ["function numberLetterCounts(limit) {\n  const dictionary = {\n    0: '',\n    1: 'one',\n    2: 'two',\n    3: 'three',\n    4: 'four',\n    5: 'five',\n    6: 'six',\n    7: 'seven',\n    8: 'eight',\n    9: 'nine',\n    10: 'ten',\n    11: 'eleven',\n    12: 'twelve',\n    13: 'thirteen',\n    14: 'fourteen',\n    15: 'fifteen',\n    16: 'sixteen',\n    17: 'seventeen',\n    18: 'eighteen',\n    19: 'nineteen',\n    20: 'twenty',\n    30: 'thirty',\n    40: 'forty',\n    50: 'fifty',\n    60: 'sixty',\n    70: 'seventy',\n    80: 'eighty',\n    90: 'ninety',\n    1000: 'onethousand'\n  };\n\n  let numString = '';\n\n  function convertToString(num) {\n    // check dictionary for number\n    if (dictionary[num]) {\n      return dictionary[num];\n    } else {\n      const hundreds = Math.floor(num / 100);\n      const tens =  Math.floor((num / 10) % 10) * 10;\n      const remainder = num % 10;\n\n      let tempStr = '';\n\n      if (hundreds === 0) {\n        tempStr += dictionary[tens] + dictionary[remainder];\n      } else {\n        tempStr += dictionary[hundreds] + 'hundred';\n\n        if (tens !== 0 || remainder !== 0) {\n          tempStr += 'and';\n        }\n\n        if (tens < 20) {\n          const lessThanTwenty = tens + remainder;\n          tempStr += dictionary[lessThanTwenty];\n        } else {\n          tempStr += dictionary[tens] + dictionary[remainder];\n        }\n      }\n      // console.log(num, hundreds, tens, remainder);\n      return tempStr;\n    }\n  }\n\n  for (let i = 1; i <= limit; i++) {\n    numString += convertToString(i);\n  }\n  return numString.length;\n}"],
      "translations": {},
      "challengeSeed": [
        "function numberLetterCounts(limit) {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "numberLetterCounts(5);"
      ],
      "description": [
        "If the numbers 1 to 5 are written out in words: one, two, three, four, five, then there are 3 + 3 + 5 + 4 + 4 = 19 letters used in total.",
        "If all the numbers from 1 to 1000 (one thousand) inclusive were written out in words, how many letters would be used? ",
        "NOTE: Do not count spaces or hyphens. For example, 342 (three hundred and forty-two) contains 23 letters and 115 (one hundred and fifteen) contains 20 letters. The use of \"and\" when writing out numbers is in compliance with British usage."
      ]
    },
    {
      "id": "5900f37e1000cf542c50fe91",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 18: Maximum path sum I",
      "tests": [
        "assert.strictEqual(maximumPathSumI(testTriangle), 23, 'message: <code>maximumPathSumI(testTriangle)</code> should return 23.');",
        "assert.strictEqual(maximumPathSumI(numTriangle), 1074, 'message: <code>maximumPathSumI(numTriangle)</code> should return 1074.');"
      ],
      "solutions": ["const testTriangle = [[3, 0, 0, 0],\n  [7, 4, 0, 0],\n  [2, 4, 6, 0],\n  [8, 5, 9, 3]];\n\nfunction maximumPathSumI(triangle) {\n  let maxSum = triangle.slice();\n\n  for (let i = triangle.length - 1; i > 0; i--) {\n    let currentRow = maxSum[i];\n    let previousRow = maxSum[i - 1];\n    const temp = [];\n    for (let j = 0; j < i; j++) {\n      temp.push(Math.max((currentRow[j] + previousRow[j]), (currentRow[j + 1] + previousRow[j])));\n    }\n    maxSum[i - 1] = temp;\n    maxSum.pop();\n  }\n  return maxSum[0][0];\n}"],
      "translations": {},
      "head": [
        "const numTriangle = [[75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [95, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [17, 47, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [18, 35, 87, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [20, 4, 82, 47, 65, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [19, 1, 23, 75, 3, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0], [88, 2, 77, 73, 7, 63, 67, 0, 0, 0, 0, 0, 0, 0, 0], [99, 65, 4, 28, 6, 16, 70, 92, 0, 0, 0, 0, 0, 0, 0], [41, 41, 26, 56, 83, 40, 80, 70, 33, 0, 0, 0, 0, 0, 0], [41, 48, 72, 33, 47, 32, 37, 16, 94, 29, 0, 0, 0, 0, 0], [53, 71, 44, 65, 25, 43, 91, 52, 97, 51, 14, 0, 0, 0, 0], [70, 11, 33, 28, 77, 73, 17, 78, 39, 68, 17, 57, 0, 0, 0], [91, 71, 52, 38, 17, 14, 91, 43, 58, 50, 27, 29, 48, 0, 0], [63, 66, 4, 68, 89, 53, 67, 30, 73, 16, 69, 87, 40, 31, 0], [4, 62, 98, 27, 23, 9, 70, 98, 73, 93, 38, 53, 60, 4, 23]];"
      ],
      "challengeSeed": [
        "function maximumPathSumI(triangle) {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "const testTriangle = [[3, 0, 0, 0],",
        "                      [7, 4, 0, 0],",
        "                      [2, 4, 6, 0],",
        "                      [8, 5, 9, 3]];",
        "",
        "maximumPathSumI(testTriangle);"
      ],
      "description": [
        "By starting at the top of the triangle below and moving to adjacent numbers on the row below, the maximum total from top to bottom is 23.",
        "<span style='display: block; text-align: center;'><b style='color: red;'>3</b><br><b style='color: red;'>7</b> 4<br>2 <b style='color: red;'>4</b> 6<br>8 5 <b style='color: red;'>9</b> 3</span>",
        "That is, 3 + 7 + 4 + 9 = 23.",
        "Find the maximum total from top to bottom of the triangle below:",
        "<span style='display: block; text-align: center;'>75<br>95 64<br>17 47 82<br>18 35 87 10<br>20 04 82 47 65<br>19 01 23 75 03 34<br>88 02 77 73 07 63 67<br>99 65 04 28 06 16 70 92<br>41 41 26 56 83 40 80 70 33<br>41 48 72 33 47 32 37 16 94 29<br>53 71 44 65 25 43 91 52 97 51 14<br>70 11 33 28 77 73 17 78 39 68 17 57<br>91 71 52 38 17 14 91 43 58 50 27 29 48<br>63 66 04 68 89 53 67 30 73 16 69 87 40 31<br>04 62 98 27 23 09 70 98 73 93 38 53 60 04 23</span>",
        "NOTE: As there are only 16384 routes, it is possible to solve this problem by trying every route. However, Problem 67, is the same challenge with a triangle containing one-hundred rows; it cannot be solved by brute force, and requires a clever method! ;o)"
      ]
    },
    {
      "id": "5900f37f1000cf542c50fe92",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 19: Counting Sundays",
      "tests": [
        "assert.strictEqual(countingSundays(1943, 1946), 6, 'message: <code>countingSundays(1943, 1946)</code> should return 6.');",
        "assert.strictEqual(countingSundays(1995, 2000), 9, 'message: <code>countingSundays(1995, 2000)</code> should return 9.');",
        "assert.strictEqual(countingSundays(1901, 2000), 171, 'message: <code>countingSundays(1901, 2000)</code> should return 171.');"
      ],
      "solutions": ["function countingSundays(firstYear, lastYear) {\n  let sundays = 0;\n\n  for (let year = firstYear; year <= lastYear; year++) {\n    for (let month = 1; month <= 12; month++) {\n      const thisDate = new Date(year, month, 1);\n      if (thisDate.getDay() === 0) {\n        sundays++;\n      }\n    }\n  }\n  return sundays;\n}"],
      "translations": {},
      "challengeSeed": [
        "function countingSundays(firstYear, lastYear) {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "countingSundays(1943, 1946);"
      ],
      "description": [
        "You are given the following information, but you may prefer to do some research for yourself.",
        "1 Jan 1900 was a Monday.",
        "Thirty days has September,",
        "April, June and November.",
        "All the rest have thirty-one,",
        "Saving February alone,",
        "Which has twenty-eight, rain or shine.",
        "And on leap years, twenty-nine.",
        "A leap year occurs on any year evenly divisible by 4, but not on a century unless it is divisible by 400.",
        "How many Sundays fell on the first of the month during the twentieth century (1 Jan 1901 to 31 Dec 2000)?"
      ]
    },
    {
      "id": "5900f3801000cf542c50fe93",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 20: Factorial digit sum",
      "tests": [
        "assert.strictEqual(sumFactorialDigits(10), 27, 'message: <code>sumFactorialDigits(10)</code> should return 27.');",
        "assert.strictEqual(sumFactorialDigits(25), 72, 'message: <code>sumFactorialDigits(25)</code> should return 72.');",
        "assert.strictEqual(sumFactorialDigits(50), 216, 'message: <code>sumFactorialDigits(50)</code> should return 216.');",
        "assert.strictEqual(sumFactorialDigits(75), 432, 'message: <code>sumFactorialDigits(75)</code> should return 432.');",
        "assert.strictEqual(sumFactorialDigits(100), 648, 'message: <code>sumFactorialDigits(100)</code> should return 648.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function sumFactorialDigits(n) {",
        "  // Good luck!",
        "  return n;",
        "}",
        "",
        "sumFactorialDigits(100);"
      ],
      "description": [
        "n! means n × (n − 1) × ... × 3 × 2 × 1",
        "For example, 10! = 10 × 9 × ... × 3 × 2 × 1 = 3628800,and the sum of the digits in the number 10! is 3 + 6 + 2 + 8 + 8 + 0 + 0 = 27.",
        "Find the sum of the digits n!"
      ]
    },
    {
      "id": "5900f3811000cf542c50fe94",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 21: Amicable numbers",
      "tests": [
        "assert.strictEqual(sumAmicableNum(1000), 504, 'message: \u003ccode\u003esumAmicableNum(1000)\u003c/code\u003e should return 504.');",
        "assert.strictEqual(sumAmicableNum(2000), 2898, 'message: \u003ccode\u003esumAmicableNum(2000)\u003c/code\u003e should return 2898.');",
        "assert.strictEqual(sumAmicableNum(5000), 8442, 'message: \u003ccode\u003esumAmicableNum(5000)\u003c/code\u003e should return 8442.');",
        "assert.strictEqual(sumAmicableNum(10000), 31626, 'message: \u003ccode\u003esumAmicableNum(10000)\u003c/code\u003e should return 31626.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function sumAmicableNum(n) {",
        "  // Good luck!",
        "  return n;",
        "}",
        "",
        "sumAmicableNum(10000);"
      ],
      "description": [
        "Let d(n) be defined as the sum of proper divisors of n (numbers less than n which divide evenly into n).",
        "If d(a) = b and d(b) = a, where a ≠ b, then a and b are an amicable pair and each of a and b are called amicable numbers.",
        "For example, the proper divisors of 220 are 1, 2, 4, 5, 10, 11, 20, 22, 44, 55 and 110; therefore d(220) = 284. The proper divisors of 284 are 1, 2, 4, 71 and 142; so d(284) = 220.",
        "Evaluate the sum of all the amicable numbers under n."
      ]
    },
    {
      "id": "5a51eabcad78bf416f316e2a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 22: Names scores",
      "tests": [
        "assert.strictEqual(namesScores(test1), 791, 'message: <code>namesScores(test1)</code> should return 791.');",
        "assert.strictEqual(namesScores(test2), 1468, 'message: <code>namesScores(test2)</code> should return 1468.');",
        "assert.strictEqual(namesScores(names), 871198282, 'message: <code>namesScores(names)</code> should return 871198282.');"
      ],
      "solutions": [],
      "translations": {},
      "head": [
        "const names = ['MARY','PATRICIA','LINDA','BARBARA','ELIZABETH','JENNIFER','MARIA','SUSAN','MARGARET','DOROTHY','LISA','NANCY','KAREN','BETTY','HELEN','SANDRA','DONNA','CAROL','RUTH','SHARON','MICHELLE','LAURA','SARAH','KIMBERLY','DEBORAH','JESSICA','SHIRLEY','CYNTHIA','ANGELA','MELISSA','BRENDA','AMY','ANNA','REBECCA','VIRGINIA','KATHLEEN','PAMELA','MARTHA','DEBRA','AMANDA','STEPHANIE','CAROLYN','CHRISTINE','MARIE','JANET','CATHERINE','FRANCES','ANN','JOYCE','DIANE','ALICE','JULIE','HEATHER','TERESA','DORIS','GLORIA','EVELYN','JEAN','CHERYL','MILDRED','KATHERINE','JOAN','ASHLEY','JUDITH','ROSE','JANICE','KELLY','NICOLE','JUDY','CHRISTINA','KATHY','THERESA','BEVERLY','DENISE','TAMMY','IRENE','JANE','LORI','RACHEL','MARILYN','ANDREA','KATHRYN','LOUISE','SARA','ANNE','JACQUELINE','WANDA','BONNIE','JULIA','RUBY','LOIS','TINA','PHYLLIS','NORMA','PAULA','DIANA','ANNIE','LILLIAN','EMILY','ROBIN','PEGGY','CRYSTAL','GLADYS','RITA','DAWN','CONNIE','FLORENCE','TRACY','EDNA','TIFFANY','CARMEN','ROSA','CINDY','GRACE','WENDY','VICTORIA','EDITH','KIM','SHERRY','SYLVIA','JOSEPHINE','THELMA','SHANNON','SHEILA','ETHEL','ELLEN','ELAINE','MARJORIE','CARRIE','CHARLOTTE','MONICA','ESTHER','PAULINE','EMMA','JUANITA','ANITA','RHONDA','HAZEL','AMBER','EVA','DEBBIE','APRIL','LESLIE','CLARA','LUCILLE','JAMIE','JOANNE','ELEANOR','VALERIE','DANIELLE','MEGAN','ALICIA','SUZANNE','MICHELE','GAIL','BERTHA','DARLENE','VERONICA','JILL','ERIN','GERALDINE','LAUREN','CATHY','JOANN','LORRAINE','LYNN','SALLY','REGINA','ERICA','BEATRICE','DOLORES','BERNICE','AUDREY','YVONNE','ANNETTE','JUNE','SAMANTHA','MARION','DANA','STACY','ANA','RENEE','IDA','VIVIAN','ROBERTA','HOLLY','BRITTANY','MELANIE','LORETTA','YOLANDA','JEANETTE','LAURIE','KATIE','KRISTEN','VANESSA','ALMA','SUE','ELSIE','BETH','JEANNE','VICKI','CARLA','TARA','ROSEMARY','EILEEN','TERRI','GERTRUDE','LUCY','TONYA','ELLA','STACEY','WILMA','GINA','KRISTIN','JESSIE','NATALIE','AGNES','VERA','WILLIE','CHARLENE','BESSIE','DELORES','MELINDA','PEARL','ARLENE','MAUREEN','COLLEEN','ALLISON','TAMARA','JOY','GEORGIA','CONSTANCE','LILLIE','CLAUDIA','JACKIE','MARCIA','TANYA','NELLIE','MINNIE','MARLENE','HEIDI','GLENDA','LYDIA','VIOLA','COURTNEY','MARIAN','STELLA','CAROLINE','DORA','JO','VICKIE','MATTIE','TERRY','MAXINE','IRMA','MABEL','MARSHA','MYRTLE','LENA','CHRISTY','DEANNA','PATSY','HILDA','GWENDOLYN','JENNIE','NORA','MARGIE','NINA','CASSANDRA','LEAH','PENNY','KAY','PRISCILLA','NAOMI','CAROLE','BRANDY','OLGA','BILLIE','DIANNE','TRACEY','LEONA','JENNY','FELICIA','SONIA','MIRIAM','VELMA','BECKY','BOBBIE','VIOLET','KRISTINA','TONI','MISTY','MAE','SHELLY','DAISY','RAMONA','SHERRI','ERIKA','KATRINA','CLAIRE','LINDSEY','LINDSAY','GENEVA','GUADALUPE','BELINDA','MARGARITA','SHERYL','CORA','FAYE','ADA','NATASHA','SABRINA','ISABEL','MARGUERITE','HATTIE','HARRIET','MOLLY','CECILIA','KRISTI','BRANDI','BLANCHE','SANDY','ROSIE','JOANNA','IRIS','EUNICE','ANGIE','INEZ','LYNDA','MADELINE','AMELIA','ALBERTA','GENEVIEVE','MONIQUE','JODI','JANIE','MAGGIE','KAYLA','SONYA','JAN','LEE','KRISTINE','CANDACE','FANNIE','MARYANN','OPAL','ALISON','YVETTE','MELODY','LUZ','SUSIE','OLIVIA','FLORA','SHELLEY','KRISTY','MAMIE','LULA','LOLA','VERNA','BEULAH','ANTOINETTE','CANDICE','JUANA','JEANNETTE','PAM','KELLI','HANNAH','WHITNEY','BRIDGET','KARLA','CELIA','LATOYA','PATTY','SHELIA','GAYLE','DELLA','VICKY','LYNNE','SHERI','MARIANNE','KARA','JACQUELYN','ERMA','BLANCA','MYRA','LETICIA','PAT','KRISTA','ROXANNE','ANGELICA','JOHNNIE','ROBYN','FRANCIS','ADRIENNE','ROSALIE','ALEXANDRA','BROOKE','BETHANY','SADIE','BERNADETTE','TRACI','JODY','KENDRA','JASMINE','NICHOLE','RACHAEL','CHELSEA','MABLE','ERNESTINE','MURIEL','MARCELLA','ELENA','KRYSTAL','ANGELINA','NADINE','KARI','ESTELLE','DIANNA','PAULETTE','LORA','MONA','DOREEN','ROSEMARIE','ANGEL','DESIREE','ANTONIA','HOPE','GINGER','JANIS','BETSY','CHRISTIE','FREDA','MERCEDES','MEREDITH','LYNETTE','TERI','CRISTINA','EULA','LEIGH','MEGHAN','SOPHIA','ELOISE','ROCHELLE','GRETCHEN','CECELIA','RAQUEL','HENRIETTA','ALYSSA','JANA','KELLEY','GWEN','KERRY','JENNA','TRICIA','LAVERNE','OLIVE','ALEXIS','TASHA','SILVIA','ELVIRA','CASEY','DELIA','SOPHIE','KATE','PATTI','LORENA','KELLIE','SONJA','LILA','LANA','DARLA','MAY','MINDY','ESSIE','MANDY','LORENE','ELSA','JOSEFINA','JEANNIE','MIRANDA','DIXIE','LUCIA','MARTA','FAITH','LELA','JOHANNA','SHARI','CAMILLE','TAMI','SHAWNA','ELISA','EBONY','MELBA','ORA','NETTIE','TABITHA','OLLIE','JAIME','WINIFRED','KRISTIE','MARINA','ALISHA','AIMEE','RENA','MYRNA','MARLA','TAMMIE','LATASHA','BONITA','PATRICE','RONDA','SHERRIE','ADDIE','FRANCINE','DELORIS','STACIE','ADRIANA','CHERI','SHELBY','ABIGAIL','CELESTE','JEWEL','CARA','ADELE','REBEKAH','LUCINDA','DORTHY','CHRIS','EFFIE','TRINA','REBA','SHAWN','SALLIE','AURORA','LENORA','ETTA','LOTTIE','KERRI','TRISHA','NIKKI','ESTELLA','FRANCISCA','JOSIE','TRACIE','MARISSA','KARIN','BRITTNEY','JANELLE','LOURDES','LAUREL','HELENE','FERN','ELVA','CORINNE','KELSEY','INA','BETTIE','ELISABETH','AIDA','CAITLIN','INGRID','IVA','EUGENIA','CHRISTA','GOLDIE','CASSIE','MAUDE','JENIFER','THERESE','FRANKIE','DENA','LORNA','JANETTE','LATONYA','CANDY','MORGAN','CONSUELO','TAMIKA','ROSETTA','DEBORA','CHERIE','POLLY','DINA','JEWELL','FAY','JILLIAN','DOROTHEA','NELL','TRUDY','ESPERANZA','PATRICA','KIMBERLEY','SHANNA','HELENA','CAROLINA','CLEO','STEFANIE','ROSARIO','OLA','JANINE','MOLLIE','LUPE','ALISA','LOU','MARIBEL','SUSANNE','BETTE','SUSANA','ELISE','CECILE','ISABELLE','LESLEY','JOCELYN','PAIGE','JONI','RACHELLE','LEOLA','DAPHNE','ALTA','ESTER','PETRA','GRACIELA','IMOGENE','JOLENE','KEISHA','LACEY','GLENNA','GABRIELA','KERI','URSULA','LIZZIE','KIRSTEN','SHANA','ADELINE','MAYRA','JAYNE','JACLYN','GRACIE','SONDRA','CARMELA','MARISA','ROSALIND','CHARITY','TONIA','BEATRIZ','MARISOL','CLARICE','JEANINE','SHEENA','ANGELINE','FRIEDA','LILY','ROBBIE','SHAUNA','MILLIE','CLAUDETTE','CATHLEEN','ANGELIA','GABRIELLE','AUTUMN','KATHARINE','SUMMER','JODIE','STACI','LEA','CHRISTI','JIMMIE','JUSTINE','ELMA','LUELLA','MARGRET','DOMINIQUE','SOCORRO','RENE','MARTINA','MARGO','MAVIS','CALLIE','BOBBI','MARITZA','LUCILE','LEANNE','JEANNINE','DEANA','AILEEN','LORIE','LADONNA','WILLA','MANUELA','GALE','SELMA','DOLLY','SYBIL','ABBY','LARA','DALE','IVY','DEE','WINNIE','MARCY','LUISA','JERI','MAGDALENA','OFELIA','MEAGAN','AUDRA','MATILDA','LEILA','CORNELIA','BIANCA','SIMONE','BETTYE','RANDI','VIRGIE','LATISHA','BARBRA','GEORGINA','ELIZA','LEANN','BRIDGETTE','RHODA','HALEY','ADELA','NOLA','BERNADINE','FLOSSIE','ILA','GRETA','RUTHIE','NELDA','MINERVA','LILLY','TERRIE','LETHA','HILARY','ESTELA','VALARIE','BRIANNA','ROSALYN','EARLINE','CATALINA','AVA','MIA','CLARISSA','LIDIA','CORRINE','ALEXANDRIA','CONCEPCION','TIA','SHARRON','RAE','DONA','ERICKA','JAMI','ELNORA','CHANDRA','LENORE','NEVA','MARYLOU','MELISA','TABATHA','SERENA','AVIS','ALLIE','SOFIA','JEANIE','ODESSA','NANNIE','HARRIETT','LORAINE','PENELOPE','MILAGROS','EMILIA','BENITA','ALLYSON','ASHLEE','TANIA','TOMMIE','ESMERALDA','KARINA','EVE','PEARLIE','ZELMA','MALINDA','NOREEN','TAMEKA','SAUNDRA','HILLARY','AMIE','ALTHEA','ROSALINDA','JORDAN','LILIA','ALANA','GAY','CLARE','ALEJANDRA','ELINOR','MICHAEL','LORRIE','JERRI','DARCY','EARNESTINE','CARMELLA','TAYLOR','NOEMI','MARCIE','LIZA','ANNABELLE','LOUISA','EARLENE','MALLORY','CARLENE','NITA','SELENA','TANISHA','KATY','JULIANNE','JOHN','LAKISHA','EDWINA','MARICELA','MARGERY','KENYA','DOLLIE','ROXIE','ROSLYN','KATHRINE','NANETTE','CHARMAINE','LAVONNE','ILENE','KRIS','TAMMI','SUZETTE','CORINE','KAYE','JERRY','MERLE','CHRYSTAL','LINA','DEANNE','LILIAN','JULIANA','ALINE','LUANN','KASEY','MARYANNE','EVANGELINE','COLETTE','MELVA','LAWANDA','YESENIA','NADIA','MADGE','KATHIE','EDDIE','OPHELIA','VALERIA','NONA','MITZI','MARI','GEORGETTE','CLAUDINE','FRAN','ALISSA','ROSEANN','LAKEISHA','SUSANNA','REVA','DEIDRE','CHASITY','SHEREE','CARLY','JAMES','ELVIA','ALYCE','DEIRDRE','GENA','BRIANA','ARACELI','KATELYN','ROSANNE','WENDI','TESSA','BERTA','MARVA','IMELDA','MARIETTA','MARCI','LEONOR','ARLINE','SASHA','MADELYN','JANNA','JULIETTE','DEENA','AURELIA','JOSEFA','AUGUSTA','LILIANA','YOUNG','CHRISTIAN','LESSIE','AMALIA','SAVANNAH','ANASTASIA','VILMA','NATALIA','ROSELLA','LYNNETTE','CORINA','ALFREDA','LEANNA','CAREY','AMPARO','COLEEN','TAMRA','AISHA','WILDA','KARYN','CHERRY','QUEEN','MAURA','MAI','EVANGELINA','ROSANNA','HALLIE','ERNA','ENID','MARIANA','LACY','JULIET','JACKLYN','FREIDA','MADELEINE','MARA','HESTER','CATHRYN','LELIA','CASANDRA','BRIDGETT','ANGELITA','JANNIE','DIONNE','ANNMARIE','KATINA','BERYL','PHOEBE','MILLICENT','KATHERYN','DIANN','CARISSA','MARYELLEN','LIZ','LAURI','HELGA','GILDA','ADRIAN','RHEA','MARQUITA','HOLLIE','TISHA','TAMERA','ANGELIQUE','FRANCESCA','BRITNEY','KAITLIN','LOLITA','FLORINE','ROWENA','REYNA','TWILA','FANNY','JANELL','INES','CONCETTA','BERTIE','ALBA','BRIGITTE','ALYSON','VONDA','PANSY','ELBA','NOELLE','LETITIA','KITTY','DEANN','BRANDIE','LOUELLA','LETA','FELECIA','SHARLENE','LESA','BEVERLEY','ROBERT','ISABELLA','HERMINIA','TERRA','CELINA','TORI','OCTAVIA','JADE','DENICE','GERMAINE','SIERRA','MICHELL','CORTNEY','NELLY','DORETHA','SYDNEY','DEIDRA','MONIKA','LASHONDA','JUDI','CHELSEY','ANTIONETTE','MARGOT','BOBBY','ADELAIDE','NAN','LEEANN','ELISHA','DESSIE','LIBBY','KATHI','GAYLA','LATANYA','MINA','MELLISA','KIMBERLEE','JASMIN','RENAE','ZELDA','ELDA','MA','JUSTINA','GUSSIE','EMILIE','CAMILLA','ABBIE','ROCIO','KAITLYN','JESSE','EDYTHE','ASHLEIGH','SELINA','LAKESHA','GERI','ALLENE','PAMALA','MICHAELA','DAYNA','CARYN','ROSALIA','SUN','JACQULINE','REBECA','MARYBETH','KRYSTLE','IOLA','DOTTIE','BENNIE','BELLE','AUBREY','GRISELDA','ERNESTINA','ELIDA','ADRIANNE','DEMETRIA','DELMA','CHONG','JAQUELINE','DESTINY','ARLEEN','VIRGINA','RETHA','FATIMA','TILLIE','ELEANORE','CARI','TREVA','BIRDIE','WILHELMINA','ROSALEE','MAURINE','LATRICE','YONG','JENA','TARYN','ELIA','DEBBY','MAUDIE','JEANNA','DELILAH','CATRINA','SHONDA','HORTENCIA','THEODORA','TERESITA','ROBBIN','DANETTE','MARYJANE','FREDDIE','DELPHINE','BRIANNE','NILDA','DANNA','CINDI','BESS','IONA','HANNA','ARIEL','WINONA','VIDA','ROSITA','MARIANNA','WILLIAM','RACHEAL','GUILLERMINA','ELOISA','CELESTINE','CAREN','MALISSA','LONA','CHANTEL','SHELLIE','MARISELA','LEORA','AGATHA','SOLEDAD','MIGDALIA','IVETTE','CHRISTEN','ATHENA','JANEL','CHLOE','VEDA','PATTIE','TESSIE','TERA','MARILYNN','LUCRETIA','KARRIE','DINAH','DANIELA','ALECIA','ADELINA','VERNICE','SHIELA','PORTIA','MERRY','LASHAWN','DEVON','DARA','TAWANA','OMA','VERDA','CHRISTIN','ALENE','ZELLA','SANDI','RAFAELA','MAYA','KIRA','CANDIDA','ALVINA','SUZAN','SHAYLA','LYN','LETTIE','ALVA','SAMATHA','ORALIA','MATILDE','MADONNA','LARISSA','VESTA','RENITA','INDIA','DELOIS','SHANDA','PHILLIS','LORRI','ERLINDA','CRUZ','CATHRINE','BARB','ZOE','ISABELL','IONE','GISELA','CHARLIE','VALENCIA','ROXANNA','MAYME','KISHA','ELLIE','MELLISSA','DORRIS','DALIA','BELLA','ANNETTA','ZOILA','RETA','REINA','LAURETTA','KYLIE','CHRISTAL','PILAR','CHARLA','ELISSA','TIFFANI','TANA','PAULINA','LEOTA','BREANNA','JAYME','CARMEL','VERNELL','TOMASA','MANDI','DOMINGA','SANTA','MELODIE','LURA','ALEXA','TAMELA','RYAN','MIRNA','KERRIE','VENUS','NOEL','FELICITA','CRISTY','CARMELITA','BERNIECE','ANNEMARIE','TIARA','ROSEANNE','MISSY','CORI','ROXANA','PRICILLA','KRISTAL','JUNG','ELYSE','HAYDEE','ALETHA','BETTINA','MARGE','GILLIAN','FILOMENA','CHARLES','ZENAIDA','HARRIETTE','CARIDAD','VADA','UNA','ARETHA','PEARLINE','MARJORY','MARCELA','FLOR','EVETTE','ELOUISE','ALINA','TRINIDAD','DAVID','DAMARIS','CATHARINE','CARROLL','BELVA','NAKIA','MARLENA','LUANNE','LORINE','KARON','DORENE','DANITA','BRENNA','TATIANA','SAMMIE','LOUANN','LOREN','JULIANNA','ANDRIA','PHILOMENA','LUCILA','LEONORA','DOVIE','ROMONA','MIMI','JACQUELIN','GAYE','TONJA','MISTI','JOE','GENE','CHASTITY','STACIA','ROXANN','MICAELA','NIKITA','MEI','VELDA','MARLYS','JOHNNA','AURA','LAVERN','IVONNE','HAYLEY','NICKI','MAJORIE','HERLINDA','GEORGE','ALPHA','YADIRA','PERLA','GREGORIA','DANIEL','ANTONETTE','SHELLI','MOZELLE','MARIAH','JOELLE','CORDELIA','JOSETTE','CHIQUITA','TRISTA','LOUIS','LAQUITA','GEORGIANA','CANDI','SHANON','LONNIE','HILDEGARD','CECIL','VALENTINA','STEPHANY','MAGDA','KAROL','GERRY','GABRIELLA','TIANA','ROMA','RICHELLE','RAY','PRINCESS','OLETA','JACQUE','IDELLA','ALAINA','SUZANNA','JOVITA','BLAIR','TOSHA','RAVEN','NEREIDA','MARLYN','KYLA','JOSEPH','DELFINA','TENA','STEPHENIE','SABINA','NATHALIE','MARCELLE','GERTIE','DARLEEN','THEA','SHARONDA','SHANTEL','BELEN','VENESSA','ROSALINA','ONA','GENOVEVA','COREY','CLEMENTINE','ROSALBA','RENATE','RENATA','MI','IVORY','GEORGIANNA','FLOY','DORCAS','ARIANA','TYRA','THEDA','MARIAM','JULI','JESICA','DONNIE','VIKKI','VERLA','ROSELYN','MELVINA','JANNETTE','GINNY','DEBRAH','CORRIE','ASIA','VIOLETA','MYRTIS','LATRICIA','COLLETTE','CHARLEEN','ANISSA','VIVIANA','TWYLA','PRECIOUS','NEDRA','LATONIA','LAN','HELLEN','FABIOLA','ANNAMARIE','ADELL','SHARYN','CHANTAL','NIKI','MAUD','LIZETTE','LINDY','KIA','KESHA','JEANA','DANELLE','CHARLINE','CHANEL','CARROL','VALORIE','LIA','DORTHA','CRISTAL','SUNNY','LEONE','LEILANI','GERRI','DEBI','ANDRA','KESHIA','IMA','EULALIA','EASTER','DULCE','NATIVIDAD','LINNIE','KAMI','GEORGIE','CATINA','BROOK','ALDA','WINNIFRED','SHARLA','RUTHANN','MEAGHAN','MAGDALENE','LISSETTE','ADELAIDA','VENITA','TRENA','SHIRLENE','SHAMEKA','ELIZEBETH','DIAN','SHANTA','MICKEY','LATOSHA','CARLOTTA','WINDY','SOON','ROSINA','MARIANN','LEISA','JONNIE','DAWNA','CATHIE','BILLY','ASTRID','SIDNEY','LAUREEN','JANEEN','HOLLI','FAWN','VICKEY','TERESSA','SHANTE','RUBYE','MARCELINA','CHANDA','CARY','TERESE','SCARLETT','MARTY','MARNIE','LULU','LISETTE','JENIFFER','ELENOR','DORINDA','DONITA','CARMAN','BERNITA','ALTAGRACIA','ALETA','ADRIANNA','ZORAIDA','RONNIE','NICOLA','LYNDSEY','KENDALL','JANINA','CHRISSY','AMI','STARLA','PHYLIS','PHUONG','KYRA','CHARISSE','BLANCH','SANJUANITA','RONA','NANCI','MARILEE','MARANDA','CORY','BRIGETTE','SANJUANA','MARITA','KASSANDRA','JOYCELYN','IRA','FELIPA','CHELSIE','BONNY','MIREYA','LORENZA','KYONG','ILEANA','CANDELARIA','TONY','TOBY','SHERIE','OK','MARK','LUCIE','LEATRICE','LAKESHIA','GERDA','EDIE','BAMBI','MARYLIN','LAVON','HORTENSE','GARNET','EVIE','TRESSA','SHAYNA','LAVINA','KYUNG','JEANETTA','SHERRILL','SHARA','PHYLISS','MITTIE','ANABEL','ALESIA','THUY','TAWANDA','RICHARD','JOANIE','TIFFANIE','LASHANDA','KARISSA','ENRIQUETA','DARIA','DANIELLA','CORINNA','ALANNA','ABBEY','ROXANE','ROSEANNA','MAGNOLIA','LIDA','KYLE','JOELLEN','ERA','CORAL','CARLEEN','TRESA','PEGGIE','NOVELLA','NILA','MAYBELLE','JENELLE','CARINA','NOVA','MELINA','MARQUERITE','MARGARETTE','JOSEPHINA','EVONNE','DEVIN','CINTHIA','ALBINA','TOYA','TAWNYA','SHERITA','SANTOS','MYRIAM','LIZABETH','LISE','KEELY','JENNI','GISELLE','CHERYLE','ARDITH','ARDIS','ALESHA','ADRIANE','SHAINA','LINNEA','KAROLYN','HONG','FLORIDA','FELISHA','DORI','DARCI','ARTIE','ARMIDA','ZOLA','XIOMARA','VERGIE','SHAMIKA','NENA','NANNETTE','MAXIE','LOVIE','JEANE','JAIMIE','INGE','FARRAH','ELAINA','CAITLYN','STARR','FELICITAS','CHERLY','CARYL','YOLONDA','YASMIN','TEENA','PRUDENCE','PENNIE','NYDIA','MACKENZIE','ORPHA','MARVEL','LIZBETH','LAURETTE','JERRIE','HERMELINDA','CAROLEE','TIERRA','MIRIAN','META','MELONY','KORI','JENNETTE','JAMILA','ENA','ANH','YOSHIKO','SUSANNAH','SALINA','RHIANNON','JOLEEN','CRISTINE','ASHTON','ARACELY','TOMEKA','SHALONDA','MARTI','LACIE','KALA','JADA','ILSE','HAILEY','BRITTANI','ZONA','SYBLE','SHERRYL','RANDY','NIDIA','MARLO','KANDICE','KANDI','DEB','DEAN','AMERICA','ALYCIA','TOMMY','RONNA','NORENE','MERCY','JOSE','INGEBORG','GIOVANNA','GEMMA','CHRISTEL','AUDRY','ZORA','VITA','VAN','TRISH','STEPHAINE','SHIRLEE','SHANIKA','MELONIE','MAZIE','JAZMIN','INGA','HOA','HETTIE','GERALYN','FONDA','ESTRELLA','ADELLA','SU','SARITA','RINA','MILISSA','MARIBETH','GOLDA','EVON','ETHELYN','ENEDINA','CHERISE','CHANA','VELVA','TAWANNA','SADE','MIRTA','LI','KARIE','JACINTA','ELNA','DAVINA','CIERRA','ASHLIE','ALBERTHA','TANESHA','STEPHANI','NELLE','MINDI','LU','LORINDA','LARUE','FLORENE','DEMETRA','DEDRA','CIARA','CHANTELLE','ASHLY','SUZY','ROSALVA','NOELIA','LYDA','LEATHA','KRYSTYNA','KRISTAN','KARRI','DARLINE','DARCIE','CINDA','CHEYENNE','CHERRIE','AWILDA','ALMEDA','ROLANDA','LANETTE','JERILYN','GISELE','EVALYN','CYNDI','CLETA','CARIN','ZINA','ZENA','VELIA','TANIKA','PAUL','CHARISSA','THOMAS','TALIA','MARGARETE','LAVONDA','KAYLEE','KATHLENE','JONNA','IRENA','ILONA','IDALIA','CANDIS','CANDANCE','BRANDEE','ANITRA','ALIDA','SIGRID','NICOLETTE','MARYJO','LINETTE','HEDWIG','CHRISTIANA','CASSIDY','ALEXIA','TRESSIE','MODESTA','LUPITA','LITA','GLADIS','EVELIA','DAVIDA','CHERRI','CECILY','ASHELY','ANNABEL','AGUSTINA','WANITA','SHIRLY','ROSAURA','HULDA','EUN','BAILEY','YETTA','VERONA','THOMASINA','SIBYL','SHANNAN','MECHELLE','LUE','LEANDRA','LANI','KYLEE','KANDY','JOLYNN','FERNE','EBONI','CORENE','ALYSIA','ZULA','NADA','MOIRA','LYNDSAY','LORRETTA','JUAN','JAMMIE','HORTENSIA','GAYNELL','CAMERON','ADRIA','VINA','VICENTA','TANGELA','STEPHINE','NORINE','NELLA','LIANA','LESLEE','KIMBERELY','ILIANA','GLORY','FELICA','EMOGENE','ELFRIEDE','EDEN','EARTHA','CARMA','BEA','OCIE','MARRY','LENNIE','KIARA','JACALYN','CARLOTA','ARIELLE','YU','STAR','OTILIA','KIRSTIN','KACEY','JOHNETTA','JOEY','JOETTA','JERALDINE','JAUNITA','ELANA','DORTHEA','CAMI','AMADA','ADELIA','VERNITA','TAMAR','SIOBHAN','RENEA','RASHIDA','OUIDA','ODELL','NILSA','MERYL','KRISTYN','JULIETA','DANICA','BREANNE','AUREA','ANGLEA','SHERRON','ODETTE','MALIA','LORELEI','LIN','LEESA','KENNA','KATHLYN','FIONA','CHARLETTE','SUZIE','SHANTELL','SABRA','RACQUEL','MYONG','MIRA','MARTINE','LUCIENNE','LAVADA','JULIANN','JOHNIE','ELVERA','DELPHIA','CLAIR','CHRISTIANE','CHAROLETTE','CARRI','AUGUSTINE','ASHA','ANGELLA','PAOLA','NINFA','LEDA','LAI','EDA','SUNSHINE','STEFANI','SHANELL','PALMA','MACHELLE','LISSA','KECIA','KATHRYNE','KARLENE','JULISSA','JETTIE','JENNIFFER','HUI','CORRINA','CHRISTOPHER','CAROLANN','ALENA','TESS','ROSARIA','MYRTICE','MARYLEE','LIANE','KENYATTA','JUDIE','JANEY','IN','ELMIRA','ELDORA','DENNA','CRISTI','CATHI','ZAIDA','VONNIE','VIVA','VERNIE','ROSALINE','MARIELA','LUCIANA','LESLI','KARAN','FELICE','DENEEN','ADINA','WYNONA','TARSHA','SHERON','SHASTA','SHANITA','SHANI','SHANDRA','RANDA','PINKIE','PARIS','NELIDA','MARILOU','LYLA','LAURENE','LACI','JOI','JANENE','DOROTHA','DANIELE','DANI','CAROLYNN','CARLYN','BERENICE','AYESHA','ANNELIESE','ALETHEA','THERSA','TAMIKO','RUFINA','OLIVA','MOZELL','MARYLYN','MADISON','KRISTIAN','KATHYRN','KASANDRA','KANDACE','JANAE','GABRIEL','DOMENICA','DEBBRA','DANNIELLE','CHUN','BUFFY','BARBIE','ARCELIA','AJA','ZENOBIA','SHAREN','SHAREE','PATRICK','PAGE','MY','LAVINIA','KUM','KACIE','JACKELINE','HUONG','FELISA','EMELIA','ELEANORA','CYTHIA','CRISTIN','CLYDE','CLARIBEL','CARON','ANASTACIA','ZULMA','ZANDRA','YOKO','TENISHA','SUSANN','SHERILYN','SHAY','SHAWANDA','SABINE','ROMANA','MATHILDA','LINSEY','KEIKO','JOANA','ISELA','GRETTA','GEORGETTA','EUGENIE','DUSTY','DESIRAE','DELORA','CORAZON','ANTONINA','ANIKA','WILLENE','TRACEE','TAMATHA','REGAN','NICHELLE','MICKIE','MAEGAN','LUANA','LANITA','KELSIE','EDELMIRA','BREE','AFTON','TEODORA','TAMIE','SHENA','MEG','LINH','KELI','KACI','DANYELLE','BRITT','ARLETTE','ALBERTINE','ADELLE','TIFFINY','STORMY','SIMONA','NUMBERS','NICOLASA','NICHOL','NIA','NAKISHA','MEE','MAIRA','LOREEN','KIZZY','JOHNNY','JAY','FALLON','CHRISTENE','BOBBYE','ANTHONY','YING','VINCENZA','TANJA','RUBIE','RONI','QUEENIE','MARGARETT','KIMBERLI','IRMGARD','IDELL','HILMA','EVELINA','ESTA','EMILEE','DENNISE','DANIA','CARL','CARIE','ANTONIO','WAI','SANG','RISA','RIKKI','PARTICIA','MUI','MASAKO','MARIO','LUVENIA','LOREE','LONI','LIEN','KEVIN','GIGI','FLORENCIA','DORIAN','DENITA','DALLAS','CHI','BILLYE','ALEXANDER','TOMIKA','SHARITA','RANA','NIKOLE','NEOMA','MARGARITE','MADALYN','LUCINA','LAILA','KALI','JENETTE','GABRIELE','EVELYNE','ELENORA','CLEMENTINA','ALEJANDRINA','ZULEMA','VIOLETTE','VANNESSA','THRESA','RETTA','PIA','PATIENCE','NOELLA','NICKIE','JONELL','DELTA','CHUNG','CHAYA','CAMELIA','BETHEL','ANYA','ANDREW','THANH','SUZANN','SPRING','SHU','MILA','LILLA','LAVERNA','KEESHA','KATTIE','GIA','GEORGENE','EVELINE','ESTELL','ELIZBETH','VIVIENNE','VALLIE','TRUDIE','STEPHANE','MICHEL','MAGALY','MADIE','KENYETTA','KARREN','JANETTA','HERMINE','HARMONY','DRUCILLA','DEBBI','CELESTINA','CANDIE','BRITNI','BECKIE','AMINA','ZITA','YUN','YOLANDE','VIVIEN','VERNETTA','TRUDI','SOMMER','PEARLE','PATRINA','OSSIE','NICOLLE','LOYCE','LETTY','LARISA','KATHARINA','JOSELYN','JONELLE','JENELL','IESHA','HEIDE','FLORINDA','FLORENTINA','FLO','ELODIA','DORINE','BRUNILDA','BRIGID','ASHLI','ARDELLA','TWANA','THU','TARAH','SUNG','SHEA','SHAVON','SHANE','SERINA','RAYNA','RAMONITA','NGA','MARGURITE','LUCRECIA','KOURTNEY','KATI','JESUS','JESENIA','DIAMOND','CRISTA','AYANA','ALICA','ALIA','VINNIE','SUELLEN','ROMELIA','RACHELL','PIPER','OLYMPIA','MICHIKO','KATHALEEN','JOLIE','JESSI','JANESSA','HANA','HA','ELEASE','CARLETTA','BRITANY','SHONA','SALOME','ROSAMOND','REGENA','RAINA','NGOC','NELIA','LOUVENIA','LESIA','LATRINA','LATICIA','LARHONDA','JINA','JACKI','HOLLIS','HOLLEY','EMMY','DEEANN','CORETTA','ARNETTA','VELVET','THALIA','SHANICE','NETA','MIKKI','MICKI','LONNA','LEANA','LASHUNDA','KILEY','JOYE','JACQULYN','IGNACIA','HYUN','HIROKO','HENRY','HENRIETTE','ELAYNE','DELINDA','DARNELL','DAHLIA','COREEN','CONSUELA','CONCHITA','CELINE','BABETTE','AYANNA','ANETTE','ALBERTINA','SKYE','SHAWNEE','SHANEKA','QUIANA','PAMELIA','MIN','MERRI','MERLENE','MARGIT','KIESHA','KIERA','KAYLENE','JODEE','JENISE','ERLENE','EMMIE','ELSE','DARYL','DALILA','DAISEY','CODY','CASIE','BELIA','BABARA','VERSIE','VANESA','SHELBA','SHAWNDA','SAM','NORMAN','NIKIA','NAOMA','MARNA','MARGERET','MADALINE','LAWANA','KINDRA','JUTTA','JAZMINE','JANETT','HANNELORE','GLENDORA','GERTRUD','GARNETT','FREEDA','FREDERICA','FLORANCE','FLAVIA','DENNIS','CARLINE','BEVERLEE','ANJANETTE','VALDA','TRINITY','TAMALA','STEVIE','SHONNA','SHA','SARINA','ONEIDA','MICAH','MERILYN','MARLEEN','LURLINE','LENNA','KATHERIN','JIN','JENI','HAE','GRACIA','GLADY','FARAH','ERIC','ENOLA','EMA','DOMINQUE','DEVONA','DELANA','CECILA','CAPRICE','ALYSHA','ALI','ALETHIA','VENA','THERESIA','TAWNY','SONG','SHAKIRA','SAMARA','SACHIKO','RACHELE','PAMELLA','NICKY','MARNI','MARIEL','MAREN','MALISA','LIGIA','LERA','LATORIA','LARAE','KIMBER','KATHERN','KAREY','JENNEFER','JANETH','HALINA','FREDIA','DELISA','DEBROAH','CIERA','CHIN','ANGELIKA','ANDREE','ALTHA','YEN','VIVAN','TERRESA','TANNA','SUK','SUDIE','SOO','SIGNE','SALENA','RONNI','REBBECCA','MYRTIE','MCKENZIE','MALIKA','MAIDA','LOAN','LEONARDA','KAYLEIGH','FRANCE','ETHYL','ELLYN','DAYLE','CAMMIE','BRITTNI','BIRGIT','AVELINA','ASUNCION','ARIANNA','AKIKO','VENICE','TYESHA','TONIE','TIESHA','TAKISHA','STEFFANIE','SINDY','SANTANA','MEGHANN','MANDA','MACIE','LADY','KELLYE','KELLEE','JOSLYN','JASON','INGER','INDIRA','GLINDA','GLENNIS','FERNANDA','FAUSTINA','ENEIDA','ELICIA','DOT','DIGNA','DELL','ARLETTA','ANDRE','WILLIA','TAMMARA','TABETHA','SHERRELL','SARI','REFUGIO','REBBECA','PAULETTA','NIEVES','NATOSHA','NAKITA','MAMMIE','KENISHA','KAZUKO','KASSIE','GARY','EARLEAN','DAPHINE','CORLISS','CLOTILDE','CAROLYNE','BERNETTA','AUGUSTINA','AUDREA','ANNIS','ANNABELL','YAN','TENNILLE','TAMICA','SELENE','SEAN','ROSANA','REGENIA','QIANA','MARKITA','MACY','LEEANNE','LAURINE','KYM','JESSENIA','JANITA','GEORGINE','GENIE','EMIKO','ELVIE','DEANDRA','DAGMAR','CORIE','COLLEN','CHERISH','ROMAINE','PORSHA','PEARLENE','MICHELINE','MERNA','MARGORIE','MARGARETTA','LORE','KENNETH','JENINE','HERMINA','FREDERICKA','ELKE','DRUSILLA','DORATHY','DIONE','DESIRE','CELENA','BRIGIDA','ANGELES','ALLEGRA','THEO','TAMEKIA','SYNTHIA','STEPHEN','SOOK','SLYVIA','ROSANN','REATHA','RAYE','MARQUETTA','MARGART','LING','LAYLA','KYMBERLY','KIANA','KAYLEEN','KATLYN','KARMEN','JOELLA','IRINA','EMELDA','ELENI','DETRA','CLEMMIE','CHERYLL','CHANTELL','CATHEY','ARNITA','ARLA','ANGLE','ANGELIC','ALYSE','ZOFIA','THOMASINE','TENNIE','SON','SHERLY','SHERLEY','SHARYL','REMEDIOS','PETRINA','NICKOLE','MYUNG','MYRLE','MOZELLA','LOUANNE','LISHA','LATIA','LANE','KRYSTA','JULIENNE','JOEL','JEANENE','JACQUALINE','ISAURA','GWENDA','EARLEEN','DONALD','CLEOPATRA','CARLIE','AUDIE','ANTONIETTA','ALISE','ALEX','VERDELL','VAL','TYLER','TOMOKO','THAO','TALISHA','STEVEN','SO','SHEMIKA','SHAUN','SCARLET','SAVANNA','SANTINA','ROSIA','RAEANN','ODILIA','NANA','MINNA','MAGAN','LYNELLE','LE','KARMA','JOEANN','IVANA','INELL','ILANA','HYE','HONEY','HEE','GUDRUN','FRANK','DREAMA','CRISSY','CHANTE','CARMELINA','ARVILLA','ARTHUR','ANNAMAE','ALVERA','ALEIDA','AARON','YEE','YANIRA','VANDA','TIANNA','TAM','STEFANIA','SHIRA','PERRY','NICOL','NANCIE','MONSERRATE','MINH','MELYNDA','MELANY','MATTHEW','LOVELLA','LAURE','KIRBY','KACY','JACQUELYNN','HYON','GERTHA','FRANCISCO','ELIANA','CHRISTENA','CHRISTEEN','CHARISE','CATERINA','CARLEY','CANDYCE','ARLENA','AMMIE','YANG','WILLETTE','VANITA','TUYET','TINY','SYREETA','SILVA','SCOTT','RONALD','PENNEY','NYLA','MICHAL','MAURICE','MARYAM','MARYA','MAGEN','LUDIE','LOMA','LIVIA','LANELL','KIMBERLIE','JULEE','DONETTA','DIEDRA','DENISHA','DEANE','DAWNE','CLARINE','CHERRYL','BRONWYN','BRANDON','ALLA','VALERY','TONDA','SUEANN','SORAYA','SHOSHANA','SHELA','SHARLEEN','SHANELLE','NERISSA','MICHEAL','MERIDITH','MELLIE','MAYE','MAPLE','MAGARET','LUIS','LILI','LEONILA','LEONIE','LEEANNA','LAVONIA','LAVERA','KRISTEL','KATHEY','KATHE','JUSTIN','JULIAN','JIMMY','JANN','ILDA','HILDRED','HILDEGARDE','GENIA','FUMIKO','EVELIN','ERMELINDA','ELLY','DUNG','DOLORIS','DIONNA','DANAE','BERNEICE','ANNICE','ALIX','VERENA','VERDIE','TRISTAN','SHAWNNA','SHAWANA','SHAUNNA','ROZELLA','RANDEE','RANAE','MILAGRO','LYNELL','LUISE','LOUIE','LOIDA','LISBETH','KARLEEN','JUNITA','JONA','ISIS','HYACINTH','HEDY','GWENN','ETHELENE','ERLINE','EDWARD','DONYA','DOMONIQUE','DELICIA','DANNETTE','CICELY','BRANDA','BLYTHE','BETHANN','ASHLYN','ANNALEE','ALLINE','YUKO','VELLA','TRANG','TOWANDA','TESHA','SHERLYN','NARCISA','MIGUELINA','MERI','MAYBELL','MARLANA','MARGUERITA','MADLYN','LUNA','LORY','LORIANN','LIBERTY','LEONORE','LEIGHANN','LAURICE','LATESHA','LARONDA','KATRICE','KASIE','KARL','KALEY','JADWIGA','GLENNIE','GEARLDINE','FRANCINA','EPIFANIA','DYAN','DORIE','DIEDRE','DENESE','DEMETRICE','DELENA','DARBY','CRISTIE','CLEORA','CATARINA','CARISA','BERNIE','BARBERA','ALMETA','TRULA','TEREASA','SOLANGE','SHEILAH','SHAVONNE','SANORA','ROCHELL','MATHILDE','MARGARETA','MAIA','LYNSEY','LAWANNA','LAUNA','KENA','KEENA','KATIA','JAMEY','GLYNDA','GAYLENE','ELVINA','ELANOR','DANUTA','DANIKA','CRISTEN','CORDIE','COLETTA','CLARITA','CARMON','BRYNN','AZUCENA','AUNDREA','ANGELE','YI','WALTER','VERLIE','VERLENE','TAMESHA','SILVANA','SEBRINA','SAMIRA','REDA','RAYLENE','PENNI','PANDORA','NORAH','NOMA','MIREILLE','MELISSIA','MARYALICE','LARAINE','KIMBERY','KARYL','KARINE','KAM','JOLANDA','JOHANA','JESUSA','JALEESA','JAE','JACQUELYNE','IRISH','ILUMINADA','HILARIA','HANH','GENNIE','FRANCIE','FLORETTA','EXIE','EDDA','DREMA','DELPHA','BEV','BARBAR','ASSUNTA','ARDELL','ANNALISA','ALISIA','YUKIKO','YOLANDO','WONDA','WEI','WALTRAUD','VETA','TEQUILA','TEMEKA','TAMEIKA','SHIRLEEN','SHENITA','PIEDAD','OZELLA','MIRTHA','MARILU','KIMIKO','JULIANE','JENICE','JEN','JANAY','JACQUILINE','HILDE','FE','FAE','EVAN','EUGENE','ELOIS','ECHO','DEVORAH','CHAU','BRINDA','BETSEY','ARMINDA','ARACELIS','APRYL','ANNETT','ALISHIA','VEOLA','USHA','TOSHIKO','THEOLA','TASHIA','TALITHA','SHERY','RUDY','RENETTA','REIKO','RASHEEDA','OMEGA','OBDULIA','MIKA','MELAINE','MEGGAN','MARTIN','MARLEN','MARGET','MARCELINE','MANA','MAGDALEN','LIBRADA','LEZLIE','LEXIE','LATASHIA','LASANDRA','KELLE','ISIDRA','ISA','INOCENCIA','GWYN','FRANCOISE','ERMINIA','ERINN','DIMPLE','DEVORA','CRISELDA','ARMANDA','ARIE','ARIANE','ANGELO','ANGELENA','ALLEN','ALIZA','ADRIENE','ADALINE','XOCHITL','TWANNA','TRAN','TOMIKO','TAMISHA','TAISHA','SUSY','SIU','RUTHA','ROXY','RHONA','RAYMOND','OTHA','NORIKO','NATASHIA','MERRIE','MELVIN','MARINDA','MARIKO','MARGERT','LORIS','LIZZETTE','LEISHA','KAILA','KA','JOANNIE','JERRICA','JENE','JANNET','JANEE','JACINDA','HERTA','ELENORE','DORETTA','DELAINE','DANIELL','CLAUDIE','CHINA','BRITTA','APOLONIA','AMBERLY','ALEASE','YURI','YUK','WEN','WANETA','UTE','TOMI','SHARRI','SANDIE','ROSELLE','REYNALDA','RAGUEL','PHYLICIA','PATRIA','OLIMPIA','ODELIA','MITZIE','MITCHELL','MISS','MINDA','MIGNON','MICA','MENDY','MARIVEL','MAILE','LYNETTA','LAVETTE','LAURYN','LATRISHA','LAKIESHA','KIERSTEN','KARY','JOSPHINE','JOLYN','JETTA','JANISE','JACQUIE','IVELISSE','GLYNIS','GIANNA','GAYNELLE','EMERALD','DEMETRIUS','DANYELL','DANILLE','DACIA','CORALEE','CHER','CEOLA','BRETT','BELL','ARIANNE','ALESHIA','YUNG','WILLIEMAE','TROY','TRINH','THORA','TAI','SVETLANA','SHERIKA','SHEMEKA','SHAUNDA','ROSELINE','RICKI','MELDA','MALLIE','LAVONNA','LATINA','LARRY','LAQUANDA','LALA','LACHELLE','KLARA','KANDIS','JOHNA','JEANMARIE','JAYE','HANG','GRAYCE','GERTUDE','EMERITA','EBONIE','CLORINDA','CHING','CHERY','CAROLA','BREANN','BLOSSOM','BERNARDINE','BECKI','ARLETHA','ARGELIA','ARA','ALITA','YULANDA','YON','YESSENIA','TOBI','TASIA','SYLVIE','SHIRL','SHIRELY','SHERIDAN','SHELLA','SHANTELLE','SACHA','ROYCE','REBECKA','REAGAN','PROVIDENCIA','PAULENE','MISHA','MIKI','MARLINE','MARICA','LORITA','LATOYIA','LASONYA','KERSTIN','KENDA','KEITHA','KATHRIN','JAYMIE','JACK','GRICELDA','GINETTE','ERYN','ELINA','ELFRIEDA','DANYEL','CHEREE','CHANELLE','BARRIE','AVERY','AURORE','ANNAMARIA','ALLEEN','AILENE','AIDE','YASMINE','VASHTI','VALENTINE','TREASA','TORY','TIFFANEY','SHERYLL','SHARIE','SHANAE','SAU','RAISA','PA','NEDA','MITSUKO','MIRELLA','MILDA','MARYANNA','MARAGRET','MABELLE','LUETTA','LORINA','LETISHA','LATARSHA','LANELLE','LAJUANA','KRISSY','KARLY','KARENA','JON','JESSIKA','JERICA','JEANELLE','JANUARY','JALISA','JACELYN','IZOLA','IVEY','GREGORY','EUNA','ETHA','DREW','DOMITILA','DOMINICA','DAINA','CREOLA','CARLI','CAMIE','BUNNY','BRITTNY','ASHANTI','ANISHA','ALEEN','ADAH','YASUKO','WINTER','VIKI','VALRIE','TONA','TINISHA','THI','TERISA','TATUM','TANEKA','SIMONNE','SHALANDA','SERITA','RESSIE','REFUGIA','PAZ','OLENE','NA','MERRILL','MARGHERITA','MANDIE','MAN','MAIRE','LYNDIA','LUCI','LORRIANE','LORETA','LEONIA','LAVONA','LASHAWNDA','LAKIA','KYOKO','KRYSTINA','KRYSTEN','KENIA','KELSI','JUDE','JEANICE','ISOBEL','GEORGIANN','GENNY','FELICIDAD','EILENE','DEON','DELOISE','DEEDEE','DANNIE','CONCEPTION','CLORA','CHERILYN','CHANG','CALANDRA','BERRY','ARMANDINA','ANISA','ULA','TIMOTHY','TIERA','THERESSA','STEPHANIA','SIMA','SHYLA','SHONTA','SHERA','SHAQUITA','SHALA','SAMMY','ROSSANA','NOHEMI','NERY','MORIAH','MELITA','MELIDA','MELANI','MARYLYNN','MARISHA','MARIETTE','MALORIE','MADELENE','LUDIVINA','LORIA','LORETTE','LORALEE','LIANNE','LEON','LAVENIA','LAURINDA','LASHON','KIT','KIMI','KEILA','KATELYNN','KAI','JONE','JOANE','JI','JAYNA','JANELLA','JA','HUE','HERTHA','FRANCENE','ELINORE','DESPINA','DELSIE','DEEDRA','CLEMENCIA','CARRY','CAROLIN','CARLOS','BULAH','BRITTANIE','BOK','BLONDELL','BIBI','BEAULAH','BEATA','ANNITA','AGRIPINA','VIRGEN','VALENE','UN','TWANDA','TOMMYE','TOI','TARRA','TARI','TAMMERA','SHAKIA','SADYE','RUTHANNE','ROCHEL','RIVKA','PURA','NENITA','NATISHA','MING','MERRILEE','MELODEE','MARVIS','LUCILLA','LEENA','LAVETA','LARITA','LANIE','KEREN','ILEEN','GEORGEANN','GENNA','GENESIS','FRIDA','EWA','EUFEMIA','EMELY','ELA','EDYTH','DEONNA','DEADRA','DARLENA','CHANELL','CHAN','CATHERN','CASSONDRA','CASSAUNDRA','BERNARDA','BERNA','ARLINDA','ANAMARIA','ALBERT','WESLEY','VERTIE','VALERI','TORRI','TATYANA','STASIA','SHERISE','SHERILL','SEASON','SCOTTIE','SANDA','RUTHE','ROSY','ROBERTO','ROBBI','RANEE','QUYEN','PEARLY','PALMIRA','ONITA','NISHA','NIESHA','NIDA','NEVADA','NAM','MERLYN','MAYOLA','MARYLOUISE','MARYLAND','MARX','MARTH','MARGENE','MADELAINE','LONDA','LEONTINE','LEOMA','LEIA','LAWRENCE','LAURALEE','LANORA','LAKITA','KIYOKO','KETURAH','KATELIN','KAREEN','JONIE','JOHNETTE','JENEE','JEANETT','IZETTA','HIEDI','HEIKE','HASSIE','HAROLD','GIUSEPPINA','GEORGANN','FIDELA','FERNANDE','ELWANDA','ELLAMAE','ELIZ','DUSTI','DOTTY','CYNDY','CORALIE','CELESTA','ARGENTINA','ALVERTA','XENIA','WAVA','VANETTA','TORRIE','TASHINA','TANDY','TAMBRA','TAMA','STEPANIE','SHILA','SHAUNTA','SHARAN','SHANIQUA','SHAE','SETSUKO','SERAFINA','SANDEE','ROSAMARIA','PRISCILA','OLINDA','NADENE','MUOI','MICHELINA','MERCEDEZ','MARYROSE','MARIN','MARCENE','MAO','MAGALI','MAFALDA','LOGAN','LINN','LANNIE','KAYCE','KAROLINE','KAMILAH','KAMALA','JUSTA','JOLINE','JENNINE','JACQUETTA','IRAIDA','GERALD','GEORGEANNA','FRANCHESCA','FAIRY','EMELINE','ELANE','EHTEL','EARLIE','DULCIE','DALENE','CRIS','CLASSIE','CHERE','CHARIS','CAROYLN','CARMINA','CARITA','BRIAN','BETHANIE','AYAKO','ARICA','AN','ALYSA','ALESSANDRA','AKILAH','ADRIEN','ZETTA','YOULANDA','YELENA','YAHAIRA','XUAN','WENDOLYN','VICTOR','TIJUANA','TERRELL','TERINA','TERESIA','SUZI','SUNDAY','SHERELL','SHAVONDA','SHAUNTE','SHARDA','SHAKITA','SENA','RYANN','RUBI','RIVA','REGINIA','REA','RACHAL','PARTHENIA','PAMULA','MONNIE','MONET','MICHAELE','MELIA','MARINE','MALKA','MAISHA','LISANDRA','LEO','LEKISHA','LEAN','LAURENCE','LAKENDRA','KRYSTIN','KORTNEY','KIZZIE','KITTIE','KERA','KENDAL','KEMBERLY','KANISHA','JULENE','JULE','JOSHUA','JOHANNE','JEFFREY','JAMEE','HAN','HALLEY','GIDGET','GALINA','FREDRICKA','FLETA','FATIMAH','EUSEBIA','ELZA','ELEONORE','DORTHEY','DORIA','DONELLA','DINORAH','DELORSE','CLARETHA','CHRISTINIA','CHARLYN','BONG','BELKIS','AZZIE','ANDERA','AIKO','ADENA','YER','YAJAIRA','WAN','VANIA','ULRIKE','TOSHIA','TIFANY','STEFANY','SHIZUE','SHENIKA','SHAWANNA','SHAROLYN','SHARILYN','SHAQUANA','SHANTAY','SEE','ROZANNE','ROSELEE','RICKIE','REMONA','REANNA','RAELENE','QUINN','PHUNG','PETRONILA','NATACHA','NANCEY','MYRL','MIYOKO','MIESHA','MERIDETH','MARVELLA','MARQUITTA','MARHTA','MARCHELLE','LIZETH','LIBBIE','LAHOMA','LADAWN','KINA','KATHELEEN','KATHARYN','KARISA','KALEIGH','JUNIE','JULIEANN','JOHNSIE','JANEAN','JAIMEE','JACKQUELINE','HISAKO','HERMA','HELAINE','GWYNETH','GLENN','GITA','EUSTOLIA','EMELINA','ELIN','EDRIS','DONNETTE','DONNETTA','DIERDRE','DENAE','DARCEL','CLAUDE','CLARISA','CINDERELLA','CHIA','CHARLESETTA','CHARITA','CELSA','CASSY','CASSI','CARLEE','BRUNA','BRITTANEY','BRANDE','BILLI','BAO','ANTONETTA','ANGLA','ANGELYN','ANALISA','ALANE','WENONA','WENDIE','VERONIQUE','VANNESA','TOBIE','TEMPIE','SUMIKO','SULEMA','SPARKLE','SOMER','SHEBA','SHAYNE','SHARICE','SHANEL','SHALON','SAGE','ROY','ROSIO','ROSELIA','RENAY','REMA','REENA','PORSCHE','PING','PEG','OZIE','ORETHA','ORALEE','ODA','NU','NGAN','NAKESHA','MILLY','MARYBELLE','MARLIN','MARIS','MARGRETT','MARAGARET','MANIE','LURLENE','LILLIA','LIESELOTTE','LAVELLE','LASHAUNDA','LAKEESHA','KEITH','KAYCEE','KALYN','JOYA','JOETTE','JENAE','JANIECE','ILLA','GRISEL','GLAYDS','GENEVIE','GALA','FREDDA','FRED','ELMER','ELEONOR','DEBERA','DEANDREA','DAN','CORRINNE','CORDIA','CONTESSA','COLENE','CLEOTILDE','CHARLOTT','CHANTAY','CECILLE','BEATRIS','AZALEE','ARLEAN','ARDATH','ANJELICA','ANJA','ALFREDIA','ALEISHA','ADAM','ZADA','YUONNE','XIAO','WILLODEAN','WHITLEY','VENNIE','VANNA','TYISHA','TOVA','TORIE','TONISHA','TILDA','TIEN','TEMPLE','SIRENA','SHERRIL','SHANTI','SHAN','SENAIDA','SAMELLA','ROBBYN','RENDA','REITA','PHEBE','PAULITA','NOBUKO','NGUYET','NEOMI','MOON','MIKAELA','MELANIA','MAXIMINA','MARG','MAISIE','LYNNA','LILLI','LAYNE','LASHAUN','LAKENYA','LAEL','KIRSTIE','KATHLINE','KASHA','KARLYN','KARIMA','JOVAN','JOSEFINE','JENNELL','JACQUI','JACKELYN','HYO','HIEN','GRAZYNA','FLORRIE','FLORIA','ELEONORA','DWANA','DORLA','DONG','DELMY','DEJA','DEDE','DANN','CRYSTA','CLELIA','CLARIS','CLARENCE','CHIEKO','CHERLYN','CHERELLE','CHARMAIN','CHARA','CAMMY','BEE','ARNETTE','ARDELLE','ANNIKA','AMIEE','AMEE','ALLENA','YVONE','YUKI','YOSHIE','YEVETTE','YAEL','WILLETTA','VONCILE','VENETTA','TULA','TONETTE','TIMIKA','TEMIKA','TELMA','TEISHA','TAREN','TA','STACEE','SHIN','SHAWNTA','SATURNINA','RICARDA','POK','PASTY','ONIE','NUBIA','MORA','MIKE','MARIELLE','MARIELLA','MARIANELA','MARDELL','MANY','LUANNA','LOISE','LISABETH','LINDSY','LILLIANA','LILLIAM','LELAH','LEIGHA','LEANORA','LANG','KRISTEEN','KHALILAH','KEELEY','KANDRA','JUNKO','JOAQUINA','JERLENE','JANI','JAMIKA','JAME','HSIU','HERMILA','GOLDEN','GENEVIVE','EVIA','EUGENA','EMMALINE','ELFREDA','ELENE','DONETTE','DELCIE','DEEANNA','DARCEY','CUC','CLARINDA','CIRA','CHAE','CELINDA','CATHERYN','CATHERIN','CASIMIRA','CARMELIA','CAMELLIA','BREANA','BOBETTE','BERNARDINA','BEBE','BASILIA','ARLYNE','AMAL','ALAYNA','ZONIA','ZENIA','YURIKO','YAEKO','WYNELL','WILLOW','WILLENA','VERNIA','TU','TRAVIS','TORA','TERRILYN','TERICA','TENESHA','TAWNA','TAJUANA','TAINA','STEPHNIE','SONA','SOL','SINA','SHONDRA','SHIZUKO','SHERLENE','SHERICE','SHARIKA','ROSSIE','ROSENA','RORY','RIMA','RIA','RHEBA','RENNA','PETER','NATALYA','NANCEE','MELODI','MEDA','MAXIMA','MATHA','MARKETTA','MARICRUZ','MARCELENE','MALVINA','LUBA','LOUETTA','LEIDA','LECIA','LAURAN','LASHAWNA','LAINE','KHADIJAH','KATERINE','KASI','KALLIE','JULIETTA','JESUSITA','JESTINE','JESSIA','JEREMY','JEFFIE','JANYCE','ISADORA','GEORGIANNE','FIDELIA','EVITA','EURA','EULAH','ESTEFANA','ELSY','ELIZABET','ELADIA','DODIE','DION','DIA','DENISSE','DELORAS','DELILA','DAYSI','DAKOTA','CURTIS','CRYSTLE','CONCHA','COLBY','CLARETTA','CHU','CHRISTIA','CHARLSIE','CHARLENA','CARYLON','BETTYANN','ASLEY','ASHLEA','AMIRA','AI','AGUEDA','AGNUS','YUETTE','VINITA','VICTORINA','TYNISHA','TREENA','TOCCARA','TISH','THOMASENA','TEGAN','SOILA','SHILOH','SHENNA','SHARMAINE','SHANTAE','SHANDI','SEPTEMBER','SARAN','SARAI','SANA','SAMUEL','SALLEY','ROSETTE','ROLANDE','REGINE','OTELIA','OSCAR','OLEVIA','NICHOLLE','NECOLE','NAIDA','MYRTA','MYESHA','MITSUE','MINTA','MERTIE','MARGY','MAHALIA','MADALENE','LOVE','LOURA','LOREAN','LEWIS','LESHA','LEONIDA','LENITA','LAVONE','LASHELL','LASHANDRA','LAMONICA','KIMBRA','KATHERINA','KARRY','KANESHA','JULIO','JONG','JENEVA','JAQUELYN','HWA','GILMA','GHISLAINE','GERTRUDIS','FRANSISCA','FERMINA','ETTIE','ETSUKO','ELLIS','ELLAN','ELIDIA','EDRA','DORETHEA','DOREATHA','DENYSE','DENNY','DEETTA','DAINE','CYRSTAL','CORRIN','CAYLA','CARLITA','CAMILA','BURMA','BULA','BUENA','BLAKE','BARABARA','AVRIL','AUSTIN','ALAINE','ZANA','WILHEMINA','WANETTA','VIRGIL','VI','VERONIKA','VERNON','VERLINE','VASILIKI','TONITA','TISA','TEOFILA','TAYNA','TAUNYA','TANDRA','TAKAKO','SUNNI','SUANNE','SIXTA','SHARELL','SEEMA','RUSSELL','ROSENDA','ROBENA','RAYMONDE','PEI','PAMILA','OZELL','NEIDA','NEELY','MISTIE','MICHA','MERISSA','MAURITA','MARYLN','MARYETTA','MARSHALL','MARCELL','MALENA','MAKEDA','MADDIE','LOVETTA','LOURIE','LORRINE','LORILEE','LESTER','LAURENA','LASHAY','LARRAINE','LAREE','LACRESHA','KRISTLE','KRISHNA','KEVA','KEIRA','KAROLE','JOIE','JINNY','JEANNETTA','JAMA','HEIDY','GILBERTE','GEMA','FAVIOLA','EVELYNN','ENDA','ELLI','ELLENA','DIVINA','DAGNY','COLLENE','CODI','CINDIE','CHASSIDY','CHASIDY','CATRICE','CATHERINA','CASSEY','CAROLL','CARLENA','CANDRA','CALISTA','BRYANNA','BRITTENY','BEULA','BARI','AUDRIE','AUDRIA','ARDELIA','ANNELLE','ANGILA','ALONA','ALLYN','DOUGLAS','ROGER','JONATHAN','RALPH','NICHOLAS','BENJAMIN','BRUCE','HARRY','WAYNE','STEVE','HOWARD','ERNEST','PHILLIP','TODD','CRAIG','ALAN','PHILIP','EARL','DANNY','BRYAN','STANLEY','LEONARD','NATHAN','MANUEL','RODNEY','MARVIN','VINCENT','JEFFERY','JEFF','CHAD','JACOB','ALFRED','BRADLEY','HERBERT','FREDERICK','EDWIN','DON','RICKY','RANDALL','BARRY','BERNARD','LEROY','MARCUS','THEODORE','CLIFFORD','MIGUEL','JIM','TOM','CALVIN','BILL','LLOYD','DEREK','WARREN','DARRELL','JEROME','FLOYD','ALVIN','TIM','GORDON','GREG','JORGE','DUSTIN','PEDRO','DERRICK','ZACHARY','HERMAN','GLEN','HECTOR','RICARDO','RICK','BRENT','RAMON','GILBERT','MARC','REGINALD','RUBEN','NATHANIEL','RAFAEL','EDGAR','MILTON','RAUL','BEN','CHESTER','DUANE','FRANKLIN','BRAD','RON','ROLAND','ARNOLD','HARVEY','JARED','ERIK','DARRYL','NEIL','JAVIER','FERNANDO','CLINTON','TED','MATHEW','TYRONE','DARREN','LANCE','KURT','ALLAN','NELSON','GUY','CLAYTON','HUGH','MAX','DWAYNE','DWIGHT','ARMANDO','FELIX','EVERETT','IAN','WALLACE','KEN','BOB','ALFREDO','ALBERTO','DAVE','IVAN','BYRON','ISAAC','MORRIS','CLIFTON','WILLARD','ROSS','ANDY','SALVADOR','KIRK','SERGIO','SETH','KENT','TERRANCE','EDUARDO','TERRENCE','ENRIQUE','WADE','STUART','FREDRICK','ARTURO','ALEJANDRO','NICK','LUTHER','WENDELL','JEREMIAH','JULIUS','OTIS','TREVOR','OLIVER','LUKE','HOMER','GERARD','DOUG','KENNY','HUBERT','LYLE','MATT','ALFONSO','ORLANDO','REX','CARLTON','ERNESTO','NEAL','PABLO','LORENZO','OMAR','WILBUR','GRANT','HORACE','RODERICK','ABRAHAM','WILLIS','RICKEY','ANDRES','CESAR','JOHNATHAN','MALCOLM','RUDOLPH','DAMON','KELVIN','PRESTON','ALTON','ARCHIE','MARCO','WM','PETE','RANDOLPH','GARRY','GEOFFREY','JONATHON','FELIPE','GERARDO','ED','DOMINIC','DELBERT','COLIN','GUILLERMO','EARNEST','LUCAS','BENNY','SPENCER','RODOLFO','MYRON','EDMUND','GARRETT','SALVATORE','CEDRIC','LOWELL','GREGG','SHERMAN','WILSON','SYLVESTER','ROOSEVELT','ISRAEL','JERMAINE','FORREST','WILBERT','LELAND','SIMON','CLARK','IRVING','BRYANT','OWEN','RUFUS','WOODROW','KRISTOPHER','MACK','LEVI','MARCOS','GUSTAVO','JAKE','LIONEL','GILBERTO','CLINT','NICOLAS','ISMAEL','ORVILLE','ERVIN','DEWEY','AL','WILFRED','JOSH','HUGO','IGNACIO','CALEB','TOMAS','SHELDON','ERICK','STEWART','DOYLE','DARREL','ROGELIO','TERENCE','SANTIAGO','ALONZO','ELIAS','BERT','ELBERT','RAMIRO','CONRAD','NOAH','GRADY','PHIL','CORNELIUS','LAMAR','ROLANDO','CLAY','PERCY','DEXTER','BRADFORD','DARIN','AMOS','MOSES','IRVIN','SAUL','ROMAN','RANDAL','TIMMY','DARRIN','WINSTON','BRENDAN','ABEL','DOMINICK','BOYD','EMILIO','ELIJAH','DOMINGO','EMMETT','MARLON','EMANUEL','JERALD','EDMOND','EMIL','DEWAYNE','WILL','OTTO','TEDDY','REYNALDO','BRET','JESS','TRENT','HUMBERTO','EMMANUEL','STEPHAN','VICENTE','LAMONT','GARLAND','MILES','EFRAIN','HEATH','RODGER','HARLEY','ETHAN','ELDON','ROCKY','PIERRE','JUNIOR','FREDDY','ELI','BRYCE','ANTOINE','STERLING','CHASE','GROVER','ELTON','CLEVELAND','DYLAN','CHUCK','DAMIAN','REUBEN','STAN','AUGUST','LEONARDO','JASPER','RUSSEL','ERWIN','BENITO','HANS','MONTE','BLAINE','ERNIE','CURT','QUENTIN','AGUSTIN','MURRAY','JAMAL','ADOLFO','HARRISON','TYSON','BURTON','BRADY','ELLIOTT','WILFREDO','BART','JARROD','VANCE','DENIS','DAMIEN','JOAQUIN','HARLAN','DESMOND','ELLIOT','DARWIN','GREGORIO','BUDDY','XAVIER','KERMIT','ROSCOE','ESTEBAN','ANTON','SOLOMON','SCOTTY','NORBERT','ELVIN','WILLIAMS','NOLAN','ROD','QUINTON','HAL','BRAIN','ROB','ELWOOD','KENDRICK','DARIUS','MOISES','FIDEL','THADDEUS','CLIFF','MARCEL','JACKSON','RAPHAEL','BRYON','ARMAND','ALVARO','JEFFRY','DANE','JOESPH','THURMAN','NED','RUSTY','MONTY','FABIAN','REGGIE','MASON','GRAHAM','ISAIAH','VAUGHN','GUS','LOYD','DIEGO','ADOLPH','NORRIS','MILLARD','ROCCO','GONZALO','DERICK','RODRIGO','WILEY','RIGOBERTO','ALPHONSO','TY','NOE','VERN','REED','JEFFERSON','ELVIS','BERNARDO','MAURICIO','HIRAM','DONOVAN','BASIL','RILEY','NICKOLAS','MAYNARD','SCOT','VINCE','QUINCY','EDDY','SEBASTIAN','FEDERICO','ULYSSES','HERIBERTO','DONNELL','COLE','DAVIS','GAVIN','EMERY','WARD','ROMEO','JAYSON','DANTE','CLEMENT','COY','MAXWELL','JARVIS','BRUNO','ISSAC','DUDLEY','BROCK','SANFORD','CARMELO','BARNEY','NESTOR','STEFAN','DONNY','ART','LINWOOD','BEAU','WELDON','GALEN','ISIDRO','TRUMAN','DELMAR','JOHNATHON','SILAS','FREDERIC','DICK','IRWIN','MERLIN','CHARLEY','MARCELINO','HARRIS','CARLO','TRENTON','KURTIS','HUNTER','AURELIO','WINFRED','VITO','COLLIN','DENVER','CARTER','LEONEL','EMORY','PASQUALE','MOHAMMAD','MARIANO','DANIAL','LANDON','DIRK','BRANDEN','ADAN','BUFORD','GERMAN','WILMER','EMERSON','ZACHERY','FLETCHER','JACQUES','ERROL','DALTON','MONROE','JOSUE','EDWARDO','BOOKER','WILFORD','SONNY','SHELTON','CARSON','THERON','RAYMUNDO','DAREN','HOUSTON','ROBBY','LINCOLN','GENARO','BENNETT','OCTAVIO','CORNELL','HUNG','ARRON','ANTONY','HERSCHEL','GIOVANNI','GARTH','CYRUS','CYRIL','RONNY','LON','FREEMAN','DUNCAN','KENNITH','CARMINE','ERICH','CHADWICK','WILBURN','RUSS','REID','MYLES','ANDERSON','MORTON','JONAS','FOREST','MITCHEL','MERVIN','ZANE','RICH','JAMEL','LAZARO','ALPHONSE','RANDELL','MAJOR','JARRETT','BROOKS','ABDUL','LUCIANO','SEYMOUR','EUGENIO','MOHAMMED','VALENTIN','CHANCE','ARNULFO','LUCIEN','FERDINAND','THAD','EZRA','ALDO','RUBIN','ROYAL','MITCH','EARLE','ABE','WYATT','MARQUIS','LANNY','KAREEM','JAMAR','BORIS','ISIAH','EMILE','ELMO','ARON','LEOPOLDO','EVERETTE','JOSEF','ELOY','RODRICK','REINALDO','LUCIO','JERROD','WESTON','HERSHEL','BARTON','PARKER','LEMUEL','BURT','JULES','GIL','ELISEO','AHMAD','NIGEL','EFREN','ANTWAN','ALDEN','MARGARITO','COLEMAN','DINO','OSVALDO','LES','DEANDRE','NORMAND','KIETH','TREY','NORBERTO','NAPOLEON','JEROLD','FRITZ','ROSENDO','MILFORD','CHRISTOPER','ALFONZO','LYMAN','JOSIAH','BRANT','WILTON','RICO','JAMAAL','DEWITT','BRENTON','OLIN','FOSTER','FAUSTINO','CLAUDIO','JUDSON','GINO','EDGARDO','ALEC','TANNER','JARRED','DONN','TAD','PRINCE','PORFIRIO','ODIS','LENARD','CHAUNCEY','TOD','MEL','MARCELO','KORY','AUGUSTUS','KEVEN','HILARIO','BUD','SAL','ORVAL','MAURO','ZACHARIAH','OLEN','ANIBAL','MILO','JED','DILLON','AMADO','NEWTON','LENNY','RICHIE','HORACIO','BRICE','MOHAMED','DELMER','DARIO','REYES','MAC','JONAH','JERROLD','ROBT','HANK','RUPERT','ROLLAND','KENTON','DAMION','ANTONE','WALDO','FREDRIC','BRADLY','KIP','BURL','WALKER','TYREE','JEFFEREY','AHMED','WILLY','STANFORD','OREN','NOBLE','MOSHE','MIKEL','ENOCH','BRENDON','QUINTIN','JAMISON','FLORENCIO','DARRICK','TOBIAS','HASSAN','GIUSEPPE','DEMARCUS','CLETUS','TYRELL','LYNDON','KEENAN','WERNER','GERALDO','COLUMBUS','CHET','BERTRAM','MARKUS','HUEY','HILTON','DWAIN','DONTE','TYRON','OMER','ISAIAS','HIPOLITO','FERMIN','ADALBERTO','BO','BARRETT','TEODORO','MCKINLEY','MAXIMO','GARFIELD','RALEIGH','LAWERENCE','ABRAM','RASHAD','KING','EMMITT','DARON','SAMUAL','MIQUEL','EUSEBIO','DOMENIC','DARRON','BUSTER','WILBER','RENATO','JC','HOYT','HAYWOOD','EZEKIEL','CHAS','FLORENTINO','ELROY','CLEMENTE','ARDEN','NEVILLE','EDISON','DESHAWN','NATHANIAL','JORDON','DANILO','CLAUD','SHERWOOD','RAYMON','RAYFORD','CRISTOBAL','AMBROSE','TITUS','HYMAN','FELTON','EZEQUIEL','ERASMO','STANTON','LONNY','LEN','IKE','MILAN','LINO','JAROD','HERB','ANDREAS','WALTON','RHETT','PALMER','DOUGLASS','CORDELL','OSWALDO','ELLSWORTH','VIRGILIO','TONEY','NATHANAEL','DEL','BENEDICT','MOSE','JOHNSON','ISREAL','GARRET','FAUSTO','ASA','ARLEN','ZACK','WARNER','MODESTO','FRANCESCO','MANUAL','GAYLORD','GASTON','FILIBERTO','DEANGELO','MICHALE','GRANVILLE','WES','MALIK','ZACKARY','TUAN','ELDRIDGE','CRISTOPHER','CORTEZ','ANTIONE','MALCOM','LONG','KOREY','JOSPEH','COLTON','WAYLON','VON','HOSEA','SHAD','SANTO','RUDOLF','ROLF','REY','RENALDO','MARCELLUS','LUCIUS','KRISTOFER','BOYCE','BENTON','HAYDEN','HARLAND','ARNOLDO','RUEBEN','LEANDRO','KRAIG','JERRELL','JEROMY','HOBERT','CEDRICK','ARLIE','WINFORD','WALLY','LUIGI','KENETH','JACINTO','GRAIG','FRANKLYN','EDMUNDO','SID','PORTER','LEIF','JERAMY','BUCK','WILLIAN','VINCENZO','SHON','LYNWOOD','JERE','HAI','ELDEN','DORSEY','DARELL','BRODERICK','ALONSO'];"
      ],
      "challengeSeed": [
        "function namesScores(arr) {",
        "  // Good luck!",
        "  return arr;",
        "}",
        "",
        "// Only change code above this line",
        "const test1 = ['THIS', 'IS', 'ONLY', 'A', 'TEST'];",
        "const test2 = ['I', 'REPEAT', 'THIS', 'IS', 'ONLY', 'A', 'TEST'];",
        "",
        "namesScores(test1);"
      ],
      "description": [
        "Using names, an array containing over five-thousand first names, begin by sorting it into alphabetical order. Then working out the alphabetical value for each name, multiply this value by its alphabetical position in the list to obtain a name score.",
        "For example, when the list is sorted into alphabetical order, COLIN, which is worth 3 + 15 + 12 + 9 + 14 = 53, is the 938th name in the list. So, COLIN would obtain a score of 938 × 53 = 49714.",
        "What is the total of all the name scores in the file?"
      ]
    },
    {
      "id": "5900f3831000cf542c50fe96",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 23: Non-abundant sums",
      "tests": [
        "assert(sumOfNonAbundantNumbers(10000) === 3731004, 'message: <code>sumOfNonAbundantNumbers(10000)</code> should return 3731004.');",
        "assert(sumOfNonAbundantNumbers(15000) === 4039939, 'message: <code>sumOfNonAbundantNumbers(15000)</code> should return 4039939.');",
        "assert(sumOfNonAbundantNumbers(20000) === 4159710, 'message: <code>sumOfNonAbundantNumbers(20000)</code> should return 4159710.');",
        "assert(sumOfNonAbundantNumbers(28123) === 4179871, 'message: <code>sumOfNonAbundantNumbers(28123)</code> should return 4179871.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function sumOfNonAbundantNumbers(n) {",
        "  // Good luck!",
        "  return n;",
        "}",
        "",
        "sumOfNonAbundantNumbers(28123);"
      ],
      "description": [
        "A perfect number is a number for which the sum of its proper divisors is exactly equal to the number. For example, the sum of the proper divisors of 28 would be 1 + 2 + 4 + 7 + 14 = 28, which means that 28 is a perfect number.",
        "A number n is called deficient if the sum of its proper divisors is less than n and it is called abundant if this sum exceeds n.",
        "",
        "As 12 is the smallest abundant number, 1 + 2 + 3 + 4 + 6 = 16, the smallest number that can be written as the sum of two abundant numbers is 24. By mathematical analysis, it can be shown that all integers greater than 28123 can be written as the sum of two abundant numbers. However, this upper limit cannot be reduced any further by analysis even though it is known that the greatest number that cannot be expressed as the sum of two abundant numbers is less than this limit.",
        "Find the sum of all positive integers <= n which cannot be written as the sum of two abundant numbers."
      ]
    },
    {
      "id": "5900f3841000cf542c50fe97",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 24: Lexicographic permutations",
      "tests": [
        "assert(lexicographicPermutations(699999) == 1938246570, 'message: <code>lexicographicPermutations(699999)</code> should return 1938246570.');",
        "assert(lexicographicPermutations(899999) == 2536987410, 'message: <code>lexicographicPermutations(899999)</code> should return 2536987410.');",
        "assert(lexicographicPermutations(900000) == 2537014689, 'message: <code>lexicographicPermutations(900000)</code> should return 2537014689.');",
        "assert(lexicographicPermutations(999999) == 2783915460, 'message: <code>lexicographicPermutations(999999)</code> should return 2783915460.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function lexicographicPermutations(n) {",
        "  // Good luck!",
        "  return n;",
        "}",
        "",
        "lexicographicPermutations(999999);"
      ],
      "description": [
        "A permutation is an ordered arrangement of objects. For example, 3124 is one possible permutation of the digits 1, 2, 3 and 4. If all of the permutations are listed numerically or alphabetically, we call it lexicographic order. The lexicographic permutations of 0, 1 and 2 are:",
        "012   021   102   120   201   210",
        "What is the n-th lexicographic permutation of the digits 0, 1, 2, 3, 4, 5, 6, 7, 8 and 9?"
      ]
    },
    {
      "id": "5900f3851000cf542c50fe98",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 25: 1000-digit Fibonacci number",
      "tests": [
        "assert(digitFibonacci(5) == 20, 'message: <code>digitFibonacci(5)</code> should return 20.');",
        "assert(digitFibonacci(10) == 44, 'message: <code>digitFibonacci(10)</code> should return 44.');",
        "assert(digitFibonacci(15) == 68, 'message: <code>digitFibonacci(15)</code> should return 68.');",
        "assert(digitFibonacci(20) == 92, 'message: <code>digitFibonacci(20)</code> should return 92.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function digitFibonacci(n) {",
        "  // Good luck!",
        "  return n;",
        "}",
        "",
        "digitFibonacci(20);"
      ],
      "description": [
        "The Fibonacci sequence is defined by the recurrence relation:",
        "Fn = Fn−1 + Fn−2, where F1 = 1 and F2 = 1.",
        "Hence the first 12 terms will be:",
        "F1 = 1",
        "F2 = 1",
        "F3 = 2",
        "F4 = 3",
        "F5 = 5",
        "F6 = 8",
        "F7 = 13",
        "F8 = 21",
        "F9 = 34",
        "F10 = 55",
        "F11 = 89",
        "F12 = 144",
        "The 12th term, F12, is the first term to contain three digits.",
        "What is the index of the first term in the Fibonacci sequence to contain n digits?"
      ]
    },
    {
      "id": "5900f3861000cf542c50fe99",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 26: Reciprocal cycles",
      "tests": [
        "assert(reciprocalCycles(700) == 659, 'message: <code>reciprocalCycles(700)</code> should return 659.');",
        "assert(reciprocalCycles(800) == 743, 'message: <code>reciprocalCycles(800)</code> should return 743.');",
        "assert(reciprocalCycles(900) == 887, 'message: <code>reciprocalCycles(900)</code> should return 887.');",
        "assert(reciprocalCycles(1000) == 983, 'message: <code>reciprocalCycles(1000)</code> should return 983.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function reciprocalCycles(n) {",
        "  // Good luck!",
        "  return n;",
        "}",
        "",
        "reciprocalCycles(1000);"
      ],
      "description": [
        "A unit fraction contains 1 in the numerator. The decimal representation of the unit fractions with denominators 2 to 10 are given:",
        "",
        "1/2= 0.5",
        "1/3= 0.(3)",
        "1/4= 0.25",
        "1/5= 0.2",
        "1/6= 0.1(6)",
        "1/7= 0.(142857)",
        "1/8= 0.125",
        "1/9= 0.(1)",
        "1/10= 0.1",
        "",
        "Where 0.1(6) means 0.166666..., and has a 1-digit recurring cycle. It can be seen that 1/7 has a 6-digit recurring cycle.",
        "Find the value of d < n for which 1/d contains the longest recurring cycle in its decimal fraction part."
      ]
    },
    {
      "id": "5900f3871000cf542c50fe9a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 27: Quadratic primes",
      "tests": [
        "assert(quadraticPrimes(200) == -4925, 'message: <code>quadraticPrimes(200)</code> should return -4925.');",
        "assert(quadraticPrimes(500) == -18901, 'message: <code>quadraticPrimes(500)</code> should return -18901.');",
        "assert(quadraticPrimes(800) == -43835, 'message: <code>quadraticPrimes(800)</code> should return -43835.');",
        "assert(quadraticPrimes(1000) == -59231, 'message: <code>quadraticPrimes(1000)</code> should return -59231.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function quadraticPrimes(range) {",
        "  // Good luck!",
        "  return range;",
        "}",
        "",
        "quadraticPrimes(1000);"
      ],
      "description": [
        "Euler discovered the remarkable quadratic formula:",
        "$n^2 + n + 41$",
        "It turns out that the formula will produce 40 primes for the consecutive integer values $0 \\le n \\le 39$. However, when $n = 40, 40^2 + 40 + 41 = 40(40 + 1) + 41$ is divisible by 41, and certainly when $n = 41, 41^2 + 41 + 41$ is clearly divisible by 41.",
        "The incredible formula $n^2 - 79n + 1601$ was discovered, which produces 80 primes for the consecutive values $0 \\le n \\le 79$. The product of the coefficients, −79 and 1601, is −126479.",
        "Considering quadratics of the form:",
        "",
        "$n^2 + an + b$, where $|a| < range$ and $|b| \\le range$where $|n|$ is the modulus/absolute value of $n$e.g. $|11| = 11$ and $|-4| = 4$",
        "",
        "Find the product of the coefficients, $a$ and $b$, for the quadratic expression that produces the maximum number of primes for consecutive values of $n$, starting with $n = 0$."
      ]
    },
    {
      "id": "5900f3881000cf542c50fe9b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 28: Number spiral diagonals",
      "tests": [
        "assert(spiralDiagonals(101) == 692101, 'message: <code>spiralDiagonals(101)</code> should return 692101.');",
        "assert(spiralDiagonals(303) == 18591725, 'message: <code>spiralDiagonals(303)</code> should return 18591725.');",
        "assert(spiralDiagonals(505) == 85986601, 'message: <code>spiralDiagonals(505)</code> should return 85986601.');",
        "assert(spiralDiagonals(1001) == 669171001, 'message: <code>spiralDiagonals(1001)</code> should return 669171001.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function spiralDiagonals(n) {",
        "  // Good luck!",
        "  return n;",
        "}",
        "",
        "spiralDiagonals(1001);"
      ],
      "description": [
        "Starting with the number 1 and moving to the right in a clockwise direction a 5 by 5 spiral is formed as follows:",
        "21 22 23 24 25",
        "20  7  8  9 10",
        "19  6  1  2 11",
        "18  5  4  3 12",
        "17 16 15 14 13",
        "It can be verified that the sum of the numbers on the diagonals is 101.",
        "What is the sum of the numbers on the diagonals in a n by n spiral formed in the same way?"
      ]
    },
    {
      "id": "5900f3891000cf542c50fe9c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 29: Distinct powers",
      "tests": [
        "assert.strictEqual(distinctPowers(15), 177, 'message: <code>distinctPowers(15)</code> should return 177.');",
        "assert.strictEqual(distinctPowers(20), 324, 'message: <code>distinctPowers(20)</code> should return 324.');",
        "assert.strictEqual(distinctPowers(25), 519, 'message: <code>distinctPowers(25)</code> should return 519.');",
        "assert.strictEqual(distinctPowers(30), 755, 'message: <code>distinctPowers(30)</code> should return 755.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function distinctPowers(n) {",
        "  // Good luck!",
        "  return n;",
        "}",
        "",
        "distinctPowers(30);"
      ],
      "description": [
        "Consider all integer combinations of ab for 2 ≤ a ≤ 5 and 2 ≤ b ≤ 5:",
        "22=4, 23=8, 24=16, 25=32",
        "32=9, 33=27, 34=81, 35=243",
        "42=16, 43=64, 44=256, 45=1024",
        "52=25, 53=125, 54=625, 55=3125",
        "If they are then placed in numerical order, with any repeats removed, we get the following sequence of 15 distinct terms:",
        "4, 8, 9, 16, 25, 27, 32, 64, 81, 125, 243, 256, 625, 1024, 3125",
        "How many distinct terms are in the sequence generated by ab for 2 ≤ a ≤ n and 2 ≤ b ≤ n?"
      ]
    },
    {
      "id": "5900f38a1000cf542c50fe9d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 30: Digit n powers",
      "tests": [
        "assert(digitnPowers(2) == 0, 'message: <code>digitnPowers(2)</code> should return 0.');",
        "assert(digitnPowers(3) == 1301, 'message: <code>digitnPowers(3)</code> should return 1301.');",
        "assert(digitnPowers(4) == 19316, 'message: <code>digitnPowers(4)</code> should return 19316.');",
        "assert(digitnPowers(5) == 443839, 'message: <code>digitnPowers(5)</code> should return 443839.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function digitnPowers(n) {",
        "  // Good luck!",
        "  return n;",
        "}",
        "",
        "digitnPowers(5);"
      ],
      "description": [
        "Surprisingly there are only three numbers that can be written as the sum of fourth powers of their digits:",
        "1634 = 14 + 64 + 34 + 44",
        "8208 = 84 + 24 + 04 + 84",
        "9474 = 94 + 44 + 74 + 44",
        "As 1 = 14 is not a sum it is not included.",
        "The sum of these numbers is 1634 + 8208 + 9474 = 19316.",
        "Find the sum of all the numbers that can be written as the sum of n powers of their digits."
      ]
    },
    {
      "id": "5900f38b1000cf542c50fe9e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 31: Coin sums",
      "tests": [
        "assert(coinSums(50) == 451, 'message: <code>coinSums(50)</code> should return 451.');",
        "assert(coinSums(100) == 4563, 'message: <code>coinSums(100)</code> should return 4563.');",
        "assert(coinSums(150) == 21873, 'message: <code>coinSums(150)</code> should return 21873.');",
        "assert(coinSums(200) == 73682, 'message: <code>coinSums(200)</code> should return 73682.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function coinSums(n) {",
        "  // Good luck!",
        "  return n;",
        "}",
        "",
        "coinSums(200);"
      ],
      "description": [
        "In England the currency is made up of pound, £, and pence, p, and there are eight coins in general circulation:",
        "1p, 2p, 5p, 10p, 20p, 50p, £1 (100p) and £2 (200p).",
        "It is possible to make £2 in the following way:",
        "1×£1 + 1×50p + 2×20p + 1×5p + 1×2p + 3×1p",
        "How many different ways can £(n) be made using any number of coins?"
      ]
    },
    {
      "id": "5900f38c1000cf542c50fe9f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 32: Pandigital products",
      "tests": [
        "assert.strictEqual(euler32(), 45228, 'message: <code>euler32()</code> should return 45228.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler32() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler32();"
      ],
      "description": [
        "We shall say that an n-digit number is pandigital if it makes use of all the digits 1 to n exactly once; for example, the 5-digit number, 15234, is 1 through 5 pandigital.",
        "",
        "The product 7254 is unusual, as the identity, 39 × 186 = 7254, containing multiplicand, multiplier, and product is 1 through 9 pandigital.",
        "",
        "Find the sum of all products whose multiplicand/multiplier/product identity can be written as a 1 through 9 pandigital.",
        "",
        "HINT: Some products can be obtained in more than one way so be sure to only include it once in your sum."
      ]
    },
    {
      "id": "5900f38d1000cf542c50fea0",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 33: Digit cancelling fractions",
      "tests": [
        "assert.strictEqual(euler33(), 100, 'message: <code>euler33()</code> should return 100.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler33() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler33();"
      ],
      "description": [
        "The fraction 49/98 is a curious fraction, as an inexperienced mathematician in attempting to simplify it may incorrectly believe that 49/98 = 4/8, which is correct, is obtained by cancelling the 9s.",
        "We shall consider fractions like, 30/50 = 3/5, to be trivial examples.",
        "There are exactly four non-trivial examples of this type of fraction, less than one in value, and containing two digits in the numerator and denominator.",
        "If the product of these four fractions is given in its lowest common terms, find the value of the denominator."
      ]
    },
    {
      "id": "5900f38e1000cf542c50fea1",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 34: Digit factorials",
      "tests": [
        "assert.deepEqual(digitFactorial(), { sum: 40730, numbers: [145, 40585] }, 'message: <code>digitFactorial()</code> should return { sum: 40730, numbers: [145, 40585] }.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function digitFactorial() {",
        "  // Good luck!",
        "  var sum = 0;",
        "  var numbers = [];",
        "  return { sum, numbers };",
        "}",
        "",
        "digitFactorial();"
      ],
      "description": [
        "145 is a curious number, as 1! + 4! + 5! = 1 + 24 + 120 = 145.",
        "Find the numbers and the sum of the numbers which are equal to the sum of the factorial of their digits.",
        "Note: as 1! = 1 and 2! = 2 are not sums they are not included."
      ]
    },
    {
      "id": "5900f38f1000cf542c50fea2",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 35: Circular primes",
      "tests": [
        "assert(circularPrimes(100) == 13, 'message: <code>circularPrimes(100)</code> should return 13.');",
        "assert(circularPrimes(100000) == 43, 'message: <code>circularPrimes(100000)</code> should return 43.');",
        "assert(circularPrimes(250000) == 45, 'message: <code>circularPrimes(250000)</code> should return 45.');",
        "assert(circularPrimes(500000) == 49, 'message: <code>circularPrimes(500000)</code> should return 49.');",
        "assert(circularPrimes(750000) == 49, 'message: <code>circularPrimes(750000)</code> should return 49.');",
        "assert(circularPrimes(1000000) == 55, 'message: <code>circularPrimes(1000000)</code> should return 55.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function circularPrimes(n) {",
        "  // Good luck!",
        "  return n;",
        "}",
        "",
        "circularPrimes(1000000);"
      ],
      "description": [
        "The number, 197, is called a circular prime because all rotations of the digits: 197, 971, and 719, are themselves prime.",
        "There are thirteen such primes below 100: 2, 3, 5, 7, 11, 13, 17, 31, 37, 71, 73, 79, and 97.",
        "How many circular primes are there below n, whereas 100 <= n <= 1000000?"
      ]
    },
    {
      "id": "5900f3901000cf542c50fea3",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 36: Double-base palindromes",
      "tests": [
        "assert(doubleBasePalindromes(1000) == 1772, 'message: <code>doubleBasePalindromes(1000)</code> should return 1772.');",
        "assert(doubleBasePalindromes(50000) == 105795, 'message: <code>doubleBasePalindromes(50000)</code> should return 105795.');",
        "assert(doubleBasePalindromes(500000) == 286602, 'message: <code>doubleBasePalindromes(500000)</code> should return 286602.');",
        "assert(doubleBasePalindromes(1000000) == 872187, 'message: <code>doubleBasePalindromes(1000000)</code> should return 872187.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function doubleBasePalindromes(n) {",
        "  // Good luck!",
        "  return n;",
        "}",
        "",
        "doubleBasePalindromes(1000000);"
      ],
      "description": [
        "The decimal number, 585 = 10010010012 (binary), is palindromic in both bases.",
        "Find the sum of all numbers, less than n, whereas 1000 <= n <= 1000000, which are palindromic in base 10 and base 2.",
        "(Please note that the palindromic number, in either base, may not include leading zeros.)"
      ]
    },
    {
      "id": "5900f3911000cf542c50fea4",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 37: Truncatable primes",
      "tests": [
        "assert(truncatablePrimes(8) == 1986, 'message: <code>truncatablePrimes(8)</code> should return 1986.');",
        "assert(truncatablePrimes(9) == 5123, 'message: <code>truncatablePrimes(9)</code> should return 5123.');",
        "assert(truncatablePrimes(10) == 8920, 'message: <code>truncatablePrimes(10)</code> should return 8920.');",
        "assert(truncatablePrimes(11) == 748317, 'message: <code>truncatablePrimes(11)</code> should return 748317.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function truncatablePrimes(n) {",
        "  // Good luck!",
        "  return n;",
        "}",
        "",
        "truncatablePrimes(11);"
      ],
      "description": [
        "The number 3797 has an interesting property. Being prime itself, it is possible to continuously remove digits from left to right, and remain prime at each stage: 3797, 797, 97, and 7. Similarly we can work from right to left: 3797, 379, 37, and 3.",
        "Find the sum of the only n (8 <= n <= 11) primes that are both truncatable from left to right and right to left.",
        "NOTE: 2, 3, 5, and 7 are not considered to be truncatable primes."
      ]
    },
    {
      "id": "5900f3931000cf542c50fea5",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 38: Pandigital multiples",
      "tests": [
        "assert.strictEqual(euler38(), 932718654, 'message: <code>euler38()</code> should return 932718654.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler38() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler38();"
      ],
      "description": [
        "Take the number 192 and multiply it by each of 1, 2, and 3:",
        "192 × 1 = 192",
        "192 × 2 = 384",
        "192 × 3 = 576",
        "By concatenating each product we get the 1 to 9 pandigital, 192384576. We will call 192384576 the concatenated product of 192 and (1,2,3)",
        "The same can be achieved by starting with 9 and multiplying by 1, 2, 3, 4, and 5, giving the pandigital, 918273645, which is the concatenated product of 9 and (1,2,3,4,5).",
        "What is the largest 1 to 9 pandigital 9-digit number that can be formed as the concatenated product of an integer with (1,2, ... , n) where n > 1?"
      ]
    },
    {
      "id": "5900f3931000cf542c50fea6",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 39: Integer right triangles",
      "tests": [
        "assert(intRightTriangles(500) == 420, 'message: <code>intRightTriangles(500)</code> should return 420.');",
        "assert(intRightTriangles(800) == 420, 'message: <code>intRightTriangles(800)</code> should return 420.');",
        "assert(intRightTriangles(900) == 840, 'message: <code>intRightTriangles(900)</code> should return 840.');",
        "assert(intRightTriangles(1000) == 840, 'message: <code>intRightTriangles(1000)</code> should return 840.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function intRightTriangles(n) {",
        "  // Good luck!",
        "  return n;",
        "}",
        "",
        "intRightTriangles(1000);"
      ],
      "description": [
        "If p is the perimeter of a right angle triangle with integral length sides, {a,b,c}, there are exactly three solutions for p = 120.",
        "{20,48,52}, {24,45,51}, {30,40,50}",
        "For which value of p ≤ n, is the number of solutions maximised?"
      ]
    },
    {
      "id": "5900f3941000cf542c50fea7",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 40: Champernowne's constant",
      "tests": [
        "assert.strictEqual(euler40(), 210, 'message: <code>euler40()</code> should return 210.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler40() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler40();"
      ],
      "description": [
        "An irrational decimal fraction is created by concatenating the positive integers:",
        "0.123456789101112131415161718192021...",
        "It can be seen that the 12th digit of the fractional part is 1.",
        "If dn represents the nth digit of the fractional part, find the value of the following expression.",
        "d1 × d10 × d100 × d1000 × d10000 × d100000 × d1000000"
      ]
    },
    {
      "id": "5900f3951000cf542c50fea8",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 41: Pandigital prime",
      "tests": [
        "assert(pandigitalPrime(4) == 4231, 'message: <code>pandigitalPrime(4)</code> should return 4231.');",
        "assert(pandigitalPrime(5) == 0, 'message: <code>pandigitalPrime(5)</code> should return 0.');",
        "assert(pandigitalPrime(6) == 0, 'message: <code>pandigitalPrime(6)</code> should return 0.');",
        "assert(pandigitalPrime(7) == 7652413, 'message: <code>pandigitalPrime(7)</code> should return 7652413.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function pandigitalPrime(n) {",
        "  // Good luck!",
        "  return n;",
        "}",
        "",
        "pandigitalPrime(7);"
      ],
      "description": [
        "We shall say that an n-digit number is pandigital if it makes use of all the digits 1 to n exactly once. For example, 2143 is a 4-digit pandigital and is also prime.",
        "What is the largest n-length digit pandigital prime that exists?"
      ]
    },
    {
      "id": "5900f3961000cf542c50fea9",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 42: Coded triangle numbers",
      "tests": [
        "assert(codedTriangleNumbers(1400) == 129, 'message: <code>codedTriangleNumbers(1400)</code> should return 129.');",
        "assert(codedTriangleNumbers(1500) == 137, 'message: <code>codedTriangleNumbers(1500)</code> should return 137.');",
        "assert(codedTriangleNumbers(1600) == 141, 'message: <code>codedTriangleNumbers(1600)</code> should return 141.');",
        "assert(codedTriangleNumbers(1786) == 162, 'message: <code>codedTriangleNumbers(1786)</code> should return 162.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function codedTriangleNumbers(n) {",
        "  // Good luck!",
        "  return 1;",
        "}",
        "// only change code above this line",
        "",
        "const words = ['A','ABILITY','ABLE','ABOUT','ABOVE','ABSENCE','ABSOLUTELY','ACADEMIC','ACCEPT','ACCESS','ACCIDENT','ACCOMPANY','ACCORDING','ACCOUNT','ACHIEVE','ACHIEVEMENT','ACID','ACQUIRE','ACROSS','ACT','ACTION','ACTIVE','ACTIVITY','ACTUAL','ACTUALLY','ADD','ADDITION','ADDITIONAL','ADDRESS','ADMINISTRATION','ADMIT','ADOPT','ADULT','ADVANCE','ADVANTAGE','ADVICE','ADVISE','AFFAIR','AFFECT','AFFORD','AFRAID','AFTER','AFTERNOON','AFTERWARDS','AGAIN','AGAINST','AGE','AGENCY','AGENT','AGO','AGREE','AGREEMENT','AHEAD','AID','AIM','AIR','AIRCRAFT','ALL','ALLOW','ALMOST','ALONE','ALONG','ALREADY','ALRIGHT','ALSO','ALTERNATIVE','ALTHOUGH','ALWAYS','AMONG','AMONGST','AMOUNT','AN','ANALYSIS','ANCIENT','AND','ANIMAL','ANNOUNCE','ANNUAL','ANOTHER','ANSWER','ANY','ANYBODY','ANYONE','ANYTHING','ANYWAY','APART','APPARENT','APPARENTLY','APPEAL','APPEAR','APPEARANCE','APPLICATION','APPLY','APPOINT','APPOINTMENT','APPROACH','APPROPRIATE','APPROVE','AREA','ARGUE','ARGUMENT','ARISE','ARM','ARMY','AROUND','ARRANGE','ARRANGEMENT','ARRIVE','ART','ARTICLE','ARTIST','AS','ASK','ASPECT','ASSEMBLY','ASSESS','ASSESSMENT','ASSET','ASSOCIATE','ASSOCIATION','ASSUME','ASSUMPTION','AT','ATMOSPHERE','ATTACH','ATTACK','ATTEMPT','ATTEND','ATTENTION','ATTITUDE','ATTRACT','ATTRACTIVE','AUDIENCE','AUTHOR','AUTHORITY','AVAILABLE','AVERAGE','AVOID','AWARD','AWARE','AWAY','AYE','BABY','BACK','BACKGROUND','BAD','BAG','BALANCE','BALL','BAND','BANK','BAR','BASE','BASIC','BASIS','BATTLE','BE','BEAR','BEAT','BEAUTIFUL','BECAUSE','BECOME','BED','BEDROOM','BEFORE','BEGIN','BEGINNING','BEHAVIOUR','BEHIND','BELIEF','BELIEVE','BELONG','BELOW','BENEATH','BENEFIT','BESIDE','BEST','BETTER','BETWEEN','BEYOND','BIG','BILL','BIND','BIRD','BIRTH','BIT','BLACK','BLOCK','BLOOD','BLOODY','BLOW','BLUE','BOARD','BOAT','BODY','BONE','BOOK','BORDER','BOTH','BOTTLE','BOTTOM','BOX','BOY','BRAIN','BRANCH','BREAK','BREATH','BRIDGE','BRIEF','BRIGHT','BRING','BROAD','BROTHER','BUDGET','BUILD','BUILDING','BURN','BUS','BUSINESS','BUSY','BUT','BUY','BY','CABINET','CALL','CAMPAIGN','CAN','CANDIDATE','CAPABLE','CAPACITY','CAPITAL','CAR','CARD','CARE','CAREER','CAREFUL','CAREFULLY','CARRY','CASE','CASH','CAT','CATCH','CATEGORY','CAUSE','CELL','CENTRAL','CENTRE','CENTURY','CERTAIN','CERTAINLY','CHAIN','CHAIR','CHAIRMAN','CHALLENGE','CHANCE','CHANGE','CHANNEL','CHAPTER','CHARACTER','CHARACTERISTIC','CHARGE','CHEAP','CHECK','CHEMICAL','CHIEF','CHILD','CHOICE','CHOOSE','CHURCH','CIRCLE','CIRCUMSTANCE','CITIZEN','CITY','CIVIL','CLAIM','CLASS','CLEAN','CLEAR','CLEARLY','CLIENT','CLIMB','CLOSE','CLOSELY','CLOTHES','CLUB','COAL','CODE','COFFEE','COLD','COLLEAGUE','COLLECT','COLLECTION','COLLEGE','COLOUR','COMBINATION','COMBINE','COME','COMMENT','COMMERCIAL','COMMISSION','COMMIT','COMMITMENT','COMMITTEE','COMMON','COMMUNICATION','COMMUNITY','COMPANY','COMPARE','COMPARISON','COMPETITION','COMPLETE','COMPLETELY','COMPLEX','COMPONENT','COMPUTER','CONCENTRATE','CONCENTRATION','CONCEPT','CONCERN','CONCERNED','CONCLUDE','CONCLUSION','CONDITION','CONDUCT','CONFERENCE','CONFIDENCE','CONFIRM','CONFLICT','CONGRESS','CONNECT','CONNECTION','CONSEQUENCE','CONSERVATIVE','CONSIDER','CONSIDERABLE','CONSIDERATION','CONSIST','CONSTANT','CONSTRUCTION','CONSUMER','CONTACT','CONTAIN','CONTENT','CONTEXT','CONTINUE','CONTRACT','CONTRAST','CONTRIBUTE','CONTRIBUTION','CONTROL','CONVENTION','CONVERSATION','COPY','CORNER','CORPORATE','CORRECT','COS','COST','COULD','COUNCIL','COUNT','COUNTRY','COUNTY','COUPLE','COURSE','COURT','COVER','CREATE','CREATION','CREDIT','CRIME','CRIMINAL','CRISIS','CRITERION','CRITICAL','CRITICISM','CROSS','CROWD','CRY','CULTURAL','CULTURE','CUP','CURRENT','CURRENTLY','CURRICULUM','CUSTOMER','CUT','DAMAGE','DANGER','DANGEROUS','DARK','DATA','DATE','DAUGHTER','DAY','DEAD','DEAL','DEATH','DEBATE','DEBT','DECADE','DECIDE','DECISION','DECLARE','DEEP','DEFENCE','DEFENDANT','DEFINE','DEFINITION','DEGREE','DELIVER','DEMAND','DEMOCRATIC','DEMONSTRATE','DENY','DEPARTMENT','DEPEND','DEPUTY','DERIVE','DESCRIBE','DESCRIPTION','DESIGN','DESIRE','DESK','DESPITE','DESTROY','DETAIL','DETAILED','DETERMINE','DEVELOP','DEVELOPMENT','DEVICE','DIE','DIFFERENCE','DIFFERENT','DIFFICULT','DIFFICULTY','DINNER','DIRECT','DIRECTION','DIRECTLY','DIRECTOR','DISAPPEAR','DISCIPLINE','DISCOVER','DISCUSS','DISCUSSION','DISEASE','DISPLAY','DISTANCE','DISTINCTION','DISTRIBUTION','DISTRICT','DIVIDE','DIVISION','DO','DOCTOR','DOCUMENT','DOG','DOMESTIC','DOOR','DOUBLE','DOUBT','DOWN','DRAW','DRAWING','DREAM','DRESS','DRINK','DRIVE','DRIVER','DROP','DRUG','DRY','DUE','DURING','DUTY','EACH','EAR','EARLY','EARN','EARTH','EASILY','EAST','EASY','EAT','ECONOMIC','ECONOMY','EDGE','EDITOR','EDUCATION','EDUCATIONAL','EFFECT','EFFECTIVE','EFFECTIVELY','EFFORT','EGG','EITHER','ELDERLY','ELECTION','ELEMENT','ELSE','ELSEWHERE','EMERGE','EMPHASIS','EMPLOY','EMPLOYEE','EMPLOYER','EMPLOYMENT','EMPTY','ENABLE','ENCOURAGE','END','ENEMY','ENERGY','ENGINE','ENGINEERING','ENJOY','ENOUGH','ENSURE','ENTER','ENTERPRISE','ENTIRE','ENTIRELY','ENTITLE','ENTRY','ENVIRONMENT','ENVIRONMENTAL','EQUAL','EQUALLY','EQUIPMENT','ERROR','ESCAPE','ESPECIALLY','ESSENTIAL','ESTABLISH','ESTABLISHMENT','ESTATE','ESTIMATE','EVEN','EVENING','EVENT','EVENTUALLY','EVER','EVERY','EVERYBODY','EVERYONE','EVERYTHING','EVIDENCE','EXACTLY','EXAMINATION','EXAMINE','EXAMPLE','EXCELLENT','EXCEPT','EXCHANGE','EXECUTIVE','EXERCISE','EXHIBITION','EXIST','EXISTENCE','EXISTING','EXPECT','EXPECTATION','EXPENDITURE','EXPENSE','EXPENSIVE','EXPERIENCE','EXPERIMENT','EXPERT','EXPLAIN','EXPLANATION','EXPLORE','EXPRESS','EXPRESSION','EXTEND','EXTENT','EXTERNAL','EXTRA','EXTREMELY','EYE','FACE','FACILITY','FACT','FACTOR','FACTORY','FAIL','FAILURE','FAIR','FAIRLY','FAITH','FALL','FAMILIAR','FAMILY','FAMOUS','FAR','FARM','FARMER','FASHION','FAST','FATHER','FAVOUR','FEAR','FEATURE','FEE','FEEL','FEELING','FEMALE','FEW','FIELD','FIGHT','FIGURE','FILE','FILL','FILM','FINAL','FINALLY','FINANCE','FINANCIAL','FIND','FINDING','FINE','FINGER','FINISH','FIRE','FIRM','FIRST','FISH','FIT','FIX','FLAT','FLIGHT','FLOOR','FLOW','FLOWER','FLY','FOCUS','FOLLOW','FOLLOWING','FOOD','FOOT','FOOTBALL','FOR','FORCE','FOREIGN','FOREST','FORGET','FORM','FORMAL','FORMER','FORWARD','FOUNDATION','FREE','FREEDOM','FREQUENTLY','FRESH','FRIEND','FROM','FRONT','FRUIT','FUEL','FULL','FULLY','FUNCTION','FUND','FUNNY','FURTHER','FUTURE','GAIN','GAME','GARDEN','GAS','GATE','GATHER','GENERAL','GENERALLY','GENERATE','GENERATION','GENTLEMAN','GET','GIRL','GIVE','GLASS','GO','GOAL','GOD','GOLD','GOOD','GOVERNMENT','GRANT','GREAT','GREEN','GREY','GROUND','GROUP','GROW','GROWING','GROWTH','GUEST','GUIDE','GUN','HAIR','HALF','HALL','HAND','HANDLE','HANG','HAPPEN','HAPPY','HARD','HARDLY','HATE','HAVE','HE','HEAD','HEALTH','HEAR','HEART','HEAT','HEAVY','HELL','HELP','HENCE','HER','HERE','HERSELF','HIDE','HIGH','HIGHLY','HILL','HIM','HIMSELF','HIS','HISTORICAL','HISTORY','HIT','HOLD','HOLE','HOLIDAY','HOME','HOPE','HORSE','HOSPITAL','HOT','HOTEL','HOUR','HOUSE','HOUSEHOLD','HOUSING','HOW','HOWEVER','HUGE','HUMAN','HURT','HUSBAND','I','IDEA','IDENTIFY','IF','IGNORE','ILLUSTRATE','IMAGE','IMAGINE','IMMEDIATE','IMMEDIATELY','IMPACT','IMPLICATION','IMPLY','IMPORTANCE','IMPORTANT','IMPOSE','IMPOSSIBLE','IMPRESSION','IMPROVE','IMPROVEMENT','IN','INCIDENT','INCLUDE','INCLUDING','INCOME','INCREASE','INCREASED','INCREASINGLY','INDEED','INDEPENDENT','INDEX','INDICATE','INDIVIDUAL','INDUSTRIAL','INDUSTRY','INFLUENCE','INFORM','INFORMATION','INITIAL','INITIATIVE','INJURY','INSIDE','INSIST','INSTANCE','INSTEAD','INSTITUTE','INSTITUTION','INSTRUCTION','INSTRUMENT','INSURANCE','INTEND','INTENTION','INTEREST','INTERESTED','INTERESTING','INTERNAL','INTERNATIONAL','INTERPRETATION','INTERVIEW','INTO','INTRODUCE','INTRODUCTION','INVESTIGATE','INVESTIGATION','INVESTMENT','INVITE','INVOLVE','IRON','IS','ISLAND','ISSUE','IT','ITEM','ITS','ITSELF','JOB','JOIN','JOINT','JOURNEY','JUDGE','JUMP','JUST','JUSTICE','KEEP','KEY','KID','KILL','KIND','KING','KITCHEN','KNEE','KNOW','KNOWLEDGE','LABOUR','LACK','LADY','LAND','LANGUAGE','LARGE','LARGELY','LAST','LATE','LATER','LATTER','LAUGH','LAUNCH','LAW','LAWYER','LAY','LEAD','LEADER','LEADERSHIP','LEADING','LEAF','LEAGUE','LEAN','LEARN','LEAST','LEAVE','LEFT','LEG','LEGAL','LEGISLATION','LENGTH','LESS','LET','LETTER','LEVEL','LIABILITY','LIBERAL','LIBRARY','LIE','LIFE','LIFT','LIGHT','LIKE','LIKELY','LIMIT','LIMITED','LINE','LINK','LIP','LIST','LISTEN','LITERATURE','LITTLE','LIVE','LIVING','LOAN','LOCAL','LOCATION','LONG','LOOK','LORD','LOSE','LOSS','LOT','LOVE','LOVELY','LOW','LUNCH','MACHINE','MAGAZINE','MAIN','MAINLY','MAINTAIN','MAJOR','MAJORITY','MAKE','MALE','MAN','MANAGE','MANAGEMENT','MANAGER','MANNER','MANY','MAP','MARK','MARKET','MARRIAGE','MARRIED','MARRY','MASS','MASTER','MATCH','MATERIAL','MATTER','MAY','MAYBE','ME','MEAL','MEAN','MEANING','MEANS','MEANWHILE','MEASURE','MECHANISM','MEDIA','MEDICAL','MEET','MEETING','MEMBER','MEMBERSHIP','MEMORY','MENTAL','MENTION','MERELY','MESSAGE','METAL','METHOD','MIDDLE','MIGHT','MILE','MILITARY','MILK','MIND','MINE','MINISTER','MINISTRY','MINUTE','MISS','MISTAKE','MODEL','MODERN','MODULE','MOMENT','MONEY','MONTH','MORE','MORNING','MOST','MOTHER','MOTION','MOTOR','MOUNTAIN','MOUTH','MOVE','MOVEMENT','MUCH','MURDER','MUSEUM','MUSIC','MUST','MY','MYSELF','NAME','NARROW','NATION','NATIONAL','NATURAL','NATURE','NEAR','NEARLY','NECESSARILY','NECESSARY','NECK','NEED','NEGOTIATION','NEIGHBOUR','NEITHER','NETWORK','NEVER','NEVERTHELESS','NEW','NEWS','NEWSPAPER','NEXT','NICE','NIGHT','NO','NOBODY','NOD','NOISE','NONE','NOR','NORMAL','NORMALLY','NORTH','NORTHERN','NOSE','NOT','NOTE','NOTHING','NOTICE','NOTION','NOW','NUCLEAR','NUMBER','NURSE','OBJECT','OBJECTIVE','OBSERVATION','OBSERVE','OBTAIN','OBVIOUS','OBVIOUSLY','OCCASION','OCCUR','ODD','OF','OFF','OFFENCE','OFFER','OFFICE','OFFICER','OFFICIAL','OFTEN','OIL','OKAY','OLD','ON','ONCE','ONE','ONLY','ONTO','OPEN','OPERATE','OPERATION','OPINION','OPPORTUNITY','OPPOSITION','OPTION','OR','ORDER','ORDINARY','ORGANISATION','ORGANISE','ORGANIZATION','ORIGIN','ORIGINAL','OTHER','OTHERWISE','OUGHT','OUR','OURSELVES','OUT','OUTCOME','OUTPUT','OUTSIDE','OVER','OVERALL','OWN','OWNER','PACKAGE','PAGE','PAIN','PAINT','PAINTING','PAIR','PANEL','PAPER','PARENT','PARK','PARLIAMENT','PART','PARTICULAR','PARTICULARLY','PARTLY','PARTNER','PARTY','PASS','PASSAGE','PAST','PATH','PATIENT','PATTERN','PAY','PAYMENT','PEACE','PENSION','PEOPLE','PER','PERCENT','PERFECT','PERFORM','PERFORMANCE','PERHAPS','PERIOD','PERMANENT','PERSON','PERSONAL','PERSUADE','PHASE','PHONE','PHOTOGRAPH','PHYSICAL','PICK','PICTURE','PIECE','PLACE','PLAN','PLANNING','PLANT','PLASTIC','PLATE','PLAY','PLAYER','PLEASE','PLEASURE','PLENTY','PLUS','POCKET','POINT','POLICE','POLICY','POLITICAL','POLITICS','POOL','POOR','POPULAR','POPULATION','POSITION','POSITIVE','POSSIBILITY','POSSIBLE','POSSIBLY','POST','POTENTIAL','POUND','POWER','POWERFUL','PRACTICAL','PRACTICE','PREFER','PREPARE','PRESENCE','PRESENT','PRESIDENT','PRESS','PRESSURE','PRETTY','PREVENT','PREVIOUS','PREVIOUSLY','PRICE','PRIMARY','PRIME','PRINCIPLE','PRIORITY','PRISON','PRISONER','PRIVATE','PROBABLY','PROBLEM','PROCEDURE','PROCESS','PRODUCE','PRODUCT','PRODUCTION','PROFESSIONAL','PROFIT','PROGRAM','PROGRAMME','PROGRESS','PROJECT','PROMISE','PROMOTE','PROPER','PROPERLY','PROPERTY','PROPORTION','PROPOSE','PROPOSAL','PROSPECT','PROTECT','PROTECTION','PROVE','PROVIDE','PROVIDED','PROVISION','PUB','PUBLIC','PUBLICATION','PUBLISH','PULL','PUPIL','PURPOSE','PUSH','PUT','QUALITY','QUARTER','QUESTION','QUICK','QUICKLY','QUIET','QUITE','RACE','RADIO','RAILWAY','RAIN','RAISE','RANGE','RAPIDLY','RARE','RATE','RATHER','REACH','REACTION','READ','READER','READING','READY','REAL','REALISE','REALITY','REALIZE','REALLY','REASON','REASONABLE','RECALL','RECEIVE','RECENT','RECENTLY','RECOGNISE','RECOGNITION','RECOGNIZE','RECOMMEND','RECORD','RECOVER','RED','REDUCE','REDUCTION','REFER','REFERENCE','REFLECT','REFORM','REFUSE','REGARD','REGION','REGIONAL','REGULAR','REGULATION','REJECT','RELATE','RELATION','RELATIONSHIP','RELATIVE','RELATIVELY','RELEASE','RELEVANT','RELIEF','RELIGION','RELIGIOUS','RELY','REMAIN','REMEMBER','REMIND','REMOVE','REPEAT','REPLACE','REPLY','REPORT','REPRESENT','REPRESENTATION','REPRESENTATIVE','REQUEST','REQUIRE','REQUIREMENT','RESEARCH','RESOURCE','RESPECT','RESPOND','RESPONSE','RESPONSIBILITY','RESPONSIBLE','REST','RESTAURANT','RESULT','RETAIN','RETURN','REVEAL','REVENUE','REVIEW','REVOLUTION','RICH','RIDE','RIGHT','RING','RISE','RISK','RIVER','ROAD','ROCK','ROLE','ROLL','ROOF','ROOM','ROUND','ROUTE','ROW','ROYAL','RULE','RUN','RURAL','SAFE','SAFETY','SALE','SAME','SAMPLE','SATISFY','SAVE','SAY','SCALE','SCENE','SCHEME','SCHOOL','SCIENCE','SCIENTIFIC','SCIENTIST','SCORE','SCREEN','SEA','SEARCH','SEASON','SEAT','SECOND','SECONDARY','SECRETARY','SECTION','SECTOR','SECURE','SECURITY','SEE','SEEK','SEEM','SELECT','SELECTION','SELL','SEND','SENIOR','SENSE','SENTENCE','SEPARATE','SEQUENCE','SERIES','SERIOUS','SERIOUSLY','SERVANT','SERVE','SERVICE','SESSION','SET','SETTLE','SETTLEMENT','SEVERAL','SEVERE','SEX','SEXUAL','SHAKE','SHALL','SHAPE','SHARE','SHE','SHEET','SHIP','SHOE','SHOOT','SHOP','SHORT','SHOT','SHOULD','SHOULDER','SHOUT','SHOW','SHUT','SIDE','SIGHT','SIGN','SIGNAL','SIGNIFICANCE','SIGNIFICANT','SILENCE','SIMILAR','SIMPLE','SIMPLY','SINCE','SING','SINGLE','SIR','SISTER','SIT','SITE','SITUATION','SIZE','SKILL','SKIN','SKY','SLEEP','SLIGHTLY','SLIP','SLOW','SLOWLY','SMALL','SMILE','SO','SOCIAL','SOCIETY','SOFT','SOFTWARE','SOIL','SOLDIER','SOLICITOR','SOLUTION','SOME','SOMEBODY','SOMEONE','SOMETHING','SOMETIMES','SOMEWHAT','SOMEWHERE','SON','SONG','SOON','SORRY','SORT','SOUND','SOURCE','SOUTH','SOUTHERN','SPACE','SPEAK','SPEAKER','SPECIAL','SPECIES','SPECIFIC','SPEECH','SPEED','SPEND','SPIRIT','SPORT','SPOT','SPREAD','SPRING','STAFF','STAGE','STAND','STANDARD','STAR','START','STATE','STATEMENT','STATION','STATUS','STAY','STEAL','STEP','STICK','STILL','STOCK','STONE','STOP','STORE','STORY','STRAIGHT','STRANGE','STRATEGY','STREET','STRENGTH','STRIKE','STRONG','STRONGLY','STRUCTURE','STUDENT','STUDIO','STUDY','STUFF','STYLE','SUBJECT','SUBSTANTIAL','SUCCEED','SUCCESS','SUCCESSFUL','SUCH','SUDDENLY','SUFFER','SUFFICIENT','SUGGEST','SUGGESTION','SUITABLE','SUM','SUMMER','SUN','SUPPLY','SUPPORT','SUPPOSE','SURE','SURELY','SURFACE','SURPRISE','SURROUND','SURVEY','SURVIVE','SWITCH','SYSTEM','TABLE','TAKE','TALK','TALL','TAPE','TARGET','TASK','TAX','TEA','TEACH','TEACHER','TEACHING','TEAM','TEAR','TECHNICAL','TECHNIQUE','TECHNOLOGY','TELEPHONE','TELEVISION','TELL','TEMPERATURE','TEND','TERM','TERMS','TERRIBLE','TEST','TEXT','THAN','THANK','THANKS','THAT','THE','THEATRE','THEIR','THEM','THEME','THEMSELVES','THEN','THEORY','THERE','THEREFORE','THESE','THEY','THIN','THING','THINK','THIS','THOSE','THOUGH','THOUGHT','THREAT','THREATEN','THROUGH','THROUGHOUT','THROW','THUS','TICKET','TIME','TINY','TITLE','TO','TODAY','TOGETHER','TOMORROW','TONE','TONIGHT','TOO','TOOL','TOOTH','TOP','TOTAL','TOTALLY','TOUCH','TOUR','TOWARDS','TOWN','TRACK','TRADE','TRADITION','TRADITIONAL','TRAFFIC','TRAIN','TRAINING','TRANSFER','TRANSPORT','TRAVEL','TREAT','TREATMENT','TREATY','TREE','TREND','TRIAL','TRIP','TROOP','TROUBLE','TRUE','TRUST','TRUTH','TRY','TURN','TWICE','TYPE','TYPICAL','UNABLE','UNDER','UNDERSTAND','UNDERSTANDING','UNDERTAKE','UNEMPLOYMENT','UNFORTUNATELY','UNION','UNIT','UNITED','UNIVERSITY','UNLESS','UNLIKELY','UNTIL','UP','UPON','UPPER','URBAN','US','USE','USED','USEFUL','USER','USUAL','USUALLY','VALUE','VARIATION','VARIETY','VARIOUS','VARY','VAST','VEHICLE','VERSION','VERY','VIA','VICTIM','VICTORY','VIDEO','VIEW','VILLAGE','VIOLENCE','VISION','VISIT','VISITOR','VITAL','VOICE','VOLUME','VOTE','WAGE','WAIT','WALK','WALL','WANT','WAR','WARM','WARN','WASH','WATCH','WATER','WAVE','WAY','WE','WEAK','WEAPON','WEAR','WEATHER','WEEK','WEEKEND','WEIGHT','WELCOME','WELFARE','WELL','WEST','WESTERN','WHAT','WHATEVER','WHEN','WHERE','WHEREAS','WHETHER','WHICH','WHILE','WHILST','WHITE','WHO','WHOLE','WHOM','WHOSE','WHY','WIDE','WIDELY','WIFE','WILD','WILL','WIN','WIND','WINDOW','WINE','WING','WINNER','WINTER','WISH','WITH','WITHDRAW','WITHIN','WITHOUT','WOMAN','WONDER','WONDERFUL','WOOD','WORD','WORK','WORKER','WORKING','WORKS','WORLD','WORRY','WORTH','WOULD','WRITE','WRITER','WRITING','WRONG','YARD','YEAH','YEAR','YES','YESTERDAY','YET','YOU','YOUNG','YOUR','YOURSELF','YOUTH'];",
        "",
        "codedTriangleNumbers(1786);"
      ],
      "description": [
        "The nth term of the sequence of triangle numbers is given by, tn = ½n(n+1); so the first ten triangle numbers are:",
        "1, 3, 6, 10, 15, 21, 28, 36, 45, 55, ...",
        "By converting each letter in a word to a number corresponding to its alphabetical position and adding these values we form a word value. For example, the word value for SKY is 19 + 11 + 25 = 55 = t10. If the word value is a triangle number then we shall call the word a triangle word.",
        "Using words array of n-length, how many are triangle words?"
      ]
    },
    {
      "id": "5900f3971000cf542c50feaa",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 43: Sub-string divisibility",
      "tests": [
        "assert.deepEqual(substringDivisibility(), [ 1430952867, 1460357289, 1406357289, 4130952867, 4160357289, 4106357289 ], 'message: <code>substringDivisibility()</code> should return [ 1430952867, 1460357289, 1406357289, 4130952867, 4160357289, 4106357289 ].');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function substringDivisibility() {",
        "  // Good luck!",
        "  return [];",
        "}",
        "",
        "substringDivisibility();"
      ],
      "description": [
        "The number, 1406357289, is a 0 to 9 pandigital number because it is made up of each of the digits 0 to 9 in some order, but it also has a rather interesting sub-string divisibility property.",
        "Let d1 be the 1st digit, d2 be the 2nd digit, and so on. In this way, we note the following:",
        "d2d3d4=406 is divisible by 2",
        "d3d4d5=063 is divisible by 3",
        "d4d5d6=635 is divisible by 5",
        "d5d6d7=357 is divisible by 7",
        "d6d7d8=572 is divisible by 11",
        "d7d8d9=728 is divisible by 13",
        "d8d9d10=289 is divisible by 17",
        "Find the numbers of all 0 to 9 pandigital numbers with this property."
      ]
    },
    {
      "id": "5900f3981000cf542c50feab",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 44: Pentagon numbers",
      "tests": [
        "assert.strictEqual(euler44(), 5482660, 'message: <code>euler44()</code> should return 5482660.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler44() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler44();"
      ],
      "description": [
        "Pentagonal numbers are generated by the formula, Pn=n(3n−1)/2. The first ten pentagonal numbers are:",
        "1, 5, 12, 22, 35, 51, 70, 92, 117, 145, ...",
        "It can be seen that P4 + P7 = 22 + 70 = 92 = P8. However, their difference, 70 − 22 = 48, is not pentagonal.",
        "Find the pair of pentagonal numbers, Pj and Pk, for which their sum and difference are pentagonal and D = |Pk − Pj| is minimised; what is the value of D?"
      ]
    },
    {
      "id": "5900f3991000cf542c50feac",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 45: Triangular, pentagonal, and hexagonal",
      "tests": [
        "assert.strictEqual(euler45(), 1533776805, 'message: <code>euler45()</code> should return 1533776805.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler45() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler45();"
      ],
      "description": [
        "Triangle, pentagonal, and hexagonal numbers are generated by the following formulae:",
        "Triangle",
        " ",
        "Tn=n(n+1)/2",
        " ",
        "1, 3, 6, 10, 15, ...",
        "Pentagonal",
        " ",
        "Pn=n(3n−1)/2",
        " ",
        "1, 5, 12, 22, 35, ...",
        "Hexagonal",
        " ",
        "Hn=n(2n−1)",
        " ",
        "1, 6, 15, 28, 45, ...",
        "It can be verified that T285 = P165 = H143 = 40755.",
        "Find the next triangle number that is also pentagonal and hexagonal."
      ]
    },
    {
      "id": "5900f39a1000cf542c50fead",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 46: Goldbach's other conjecture",
      "tests": [
        "assert.strictEqual(euler46(), 5777, 'message: <code>euler46()</code> should return 5777.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler46() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler46();"
      ],
      "description": [
        "It was proposed by Christian Goldbach that every odd composite number can be written as the sum of a prime and twice a square.",
        "9 = 7 + 2×12",
        "15 = 7 + 2×22",
        "21 = 3 + 2×32",
        "25 = 7 + 2×32",
        "27 = 19 + 2×22",
        "33 = 31 + 2×12",
        "It turns out that the conjecture was false.",
        "What is the smallest odd composite that cannot be written as the sum of a prime and twice a square?"
      ]
    },
    {
      "id": "5900f39c1000cf542c50feae",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 47: Distinct primes factors",
      "tests": [
        "assert.strictEqual(euler47(), 134043, 'message: <code>euler47()</code> should return 134043.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler47() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler47();"
      ],
      "description": [
        "The first two consecutive numbers to have two distinct prime factors are:",
        "14 = 2 × 715 = 3 × 5",
        "The first three consecutive numbers to have three distinct prime factors are:",
        "644 = 2² × 7 × 23645 = 3 × 5 × 43646 = 2 × 17 × 19.",
        "Find the first four consecutive integers to have four distinct prime factors each. What is the first of these numbers?"
      ]
    },
    {
      "id": "5900f39c1000cf542c50feaf",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 48: Self powers",
      "tests": [
        "assert.strictEqual(euler48(), 9110846700, 'message: <code>euler48()</code> should return 9110846700.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler48() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler48();"
      ],
      "description": [
        "The series, 11 + 22 + 33 + ... + 1010 = 10405071317.",
        "Find the last ten digits of the series, 11 + 22 + 33 + ... + 10001000."
      ]
    },
    {
      "id": "5900f39d1000cf542c50feb0",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 49: Prime permutations",
      "tests": [
        "assert.strictEqual(euler49(), 296962999629, 'message: <code>euler49()</code> should return 296962999629.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler49() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler49();"
      ],
      "description": [
        "The arithmetic sequence, 1487, 4817, 8147, in which each of the terms increases by 3330, is unusual in two ways: (i) each of the three terms are prime, and, (ii) each of the 4-digit numbers are permutations of one another.",
        "There are no arithmetic sequences made up of three 1-, 2-, or 3-digit primes, exhibiting this property, but there is one other 4-digit increasing sequence.",
        "What 12-digit number do you form by concatenating the three terms in this sequence?"
      ]
    },
    {
      "id": "5900f39e1000cf542c50feb1",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 50: Consecutive prime sum",
      "tests": [
        "assert.strictEqual(euler50(), 997651, 'message: <code>euler50()</code> should return 997651.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler50() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler50();"
      ],
      "description": [
        "The prime 41, can be written as the sum of six consecutive primes:",
        "41 = 2 + 3 + 5 + 7 + 11 + 13",
        "This is the longest sum of consecutive primes that adds to a prime below one-hundred.",
        "The longest sum of consecutive primes below one-thousand that adds to a prime, contains 21 terms, and is equal to 953.",
        "Which prime, below one-million, can be written as the sum of the most consecutive primes?"
      ]
    },
    {
      "id": "5900f39f1000cf542c50feb2",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 51: Prime digit replacements",
      "tests": [
        "assert.strictEqual(euler51(), 121313, 'message: <code>euler51()</code> should return 121313.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler51() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler51();"
      ],
      "description": [
        "By replacing the 1st digit of the 2-digit number *3, it turns out that six of the nine possible values: 13, 23, 43, 53, 73, and 83, are all prime.",
        "By replacing the 3rd and 4th digits of 56**3 with the same digit, this 5-digit number is the first example having seven primes among the ten generated numbers, yielding the family: 56003, 56113, 56333, 56443, 56663, 56773, and 56993. Consequently 56003, being the first member of this family, is the smallest prime with this property.",
        "Find the smallest prime which, by replacing part of the number (not necessarily adjacent digits) with the same digit, is part of an eight prime value family."
      ]
    },
    {
      "id": "5900f3a01000cf542c50feb3",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 52: Permuted multiples",
      "tests": [
        "assert.strictEqual(euler52(), 142857, 'message: <code>euler52()</code> should return 142857.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler52() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler52();"
      ],
      "description": [
        "It can be seen that the number, 125874, and its double, 251748, contain exactly the same digits, but in a different order.",
        "Find the smallest positive integer, x, such that 2x, 3x, 4x, 5x, and 6x, contain the same digits."
      ]
    },
    {
      "id": "5900f3a11000cf542c50feb4",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 53: Combinatoric selections",
      "tests": [
        "assert.strictEqual(euler53(), 4075, 'message: <code>euler53()</code> should return 4075.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler53() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler53();"
      ],
      "description": [
        "There are exactly ten ways of selecting three from five, 12345:",
        "123, 124, 125, 134, 135, 145, 234, 235, 245, and 345",
        "In combinatorics, we use the notation, 5C3 = 10.",
        "In general,",
        "",
        "nCr = ",
        "n!r!(n−r)!",
        ",where r ≤ n, n! = n×(n−1)×...×3×2×1, and 0! = 1.",
        "",
        "It is not until n = 23, that a value exceeds one-million: 23C10 = 1144066.",
        "How many, not necessarily distinct, values of  nCr, for 1 ≤ n ≤ 100, are greater than one-million?"
      ]
    },
    {
      "id": "5900f3a21000cf542c50feb5",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 54: Poker hands",
      "tests": [
        "assert.strictEqual(euler54(), 376, 'message: <code>euler54()</code> should return 376.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler54() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler54();"
      ],
      "description": [
        "In the card game poker, a hand consists of five cards and are ranked, from lowest to highest, in the following way:",
        "High Card: Highest value card.",
        "One Pair: Two cards of the same value.",
        "Two Pairs: Two different pairs.",
        "Three of a Kind: Three cards of the same value.",
        "Straight: All cards are consecutive values.",
        "Flush: All cards of the same suit.",
        "Full House: Three of a kind and a pair.",
        "Four of a Kind: Four cards of the same value.",
        "Straight Flush: All cards are consecutive values of same suit.",
        "Royal Flush: Ten, Jack, Queen, King, Ace, in same suit.",
        "The cards are valued in the order:2, 3, 4, 5, 6, 7, 8, 9, 10, Jack, Queen, King, Ace.",
        "If two players have the same ranked hands then the rank made up of the highest value wins; for example, a pair of eights beats a pair of fives (see example 1 below). But if two ranks tie, for example, both players have a pair of queens, then highest cards in each hand are compared (see example 4 below); if the highest cards tie then the next highest cards are compared, and so on.",
        "Consider the following five hands dealt to two players:",
        "",
        "Hand Player 1 Player 2 Winner",
        "1 5H 5C 6S 7S KDPair of Fives 2C 3S 8S 8D TDPair of Eights Player 2",
        "2 5D 8C 9S JS ACHighest card Ace 2C 5C 7D 8S QHHighest card Queen Player 1",
        "3 2D 9C AS AH ACThree Aces 3D 6D 7D TD QDFlush  with Diamonds Player 2",
        "4 4D 6S 9H QH QCPair of QueensHighest card Nine 3D 6D 7H QD QSPair of QueensHighest card Seven Player 1",
        "5 2H 2D 4C 4D 4SFull HouseWith Three Fours 3C 3D 3S 9S 9DFull Housewith Three Threes Player 1",
        "",
        "The file, poker.txt, contains one-thousand random hands dealt to two players. Each line of the file contains ten cards (separated by a single space): the first five are Player 1's cards and the last five are Player 2's cards. You can assume that all hands are valid (no invalid characters or repeated cards), each player's hand is in no specific order, and in each hand there is a clear winner.",
        "How many hands does Player 1 win?"
      ]
    },
    {
      "id": "5900f3a31000cf542c50feb6",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 55: Lychrel numbers",
      "tests": [
        "assert.strictEqual(euler55(), 249, 'message: <code>euler55()</code> should return 249.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler55() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler55();"
      ],
      "description": [
        "If we take 47, reverse and add, 47 + 74 = 121, which is palindromic.",
        "Not all numbers produce palindromes so quickly. For example,",
        "349 + 943 = 1292,",
        "1292 + 2921 = 4213",
        "4213 + 3124 = 7337",
        "That is, 349 took three iterations to arrive at a palindrome.",
        "Although no one has proved it yet, it is thought that some numbers, like 196, never produce a palindrome. A number that never forms a palindrome through the reverse and add process is called a Lychrel number. Due to the theoretical nature of these numbers, and for the purpose of this problem, we shall assume that a number is Lychrel until proven otherwise. In addition you are given that for every number below ten-thousand, it will either (i) become a palindrome in less than fifty iterations, or, (ii) no one, with all the computing power that exists, has managed so far to map it to a palindrome. In fact, 10677 is the first number to be shown to require over fifty iterations before producing a palindrome: 4668731596684224866951378664 (53 iterations, 28-digits).",
        "Surprisingly, there are palindromic numbers that are themselves Lychrel numbers; the first example is 4994.",
        "How many Lychrel numbers are there below ten-thousand?",
        "NOTE: Wording was modified slightly on 24 April 2007 to emphasise the theoretical nature of Lychrel numbers."
      ]
    },
    {
      "id": "5900f3a41000cf542c50feb7",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 56: Powerful digit sum",
      "tests": [
        "assert.strictEqual(euler56(), 972, 'message: <code>euler56()</code> should return 972.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler56() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler56();"
      ],
      "description": [
        "A googol (10100) is a massive number: one followed by one-hundred zeros; 100100 is almost unimaginably large: one followed by two-hundred zeros. Despite their size, the sum of the digits in each number is only 1.",
        "Considering natural numbers of the form, ab, where a, b < 100, what is the maximum digital sum?"
      ]
    },
    {
      "id": "5900f3a51000cf542c50feb8",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 57: Square root convergents",
      "tests": [
        "assert.strictEqual(euler57(), 153, 'message: <code>euler57()</code> should return 153.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler57() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler57();"
      ],
      "description": [
        "It is possible to show that the square root of two can be expressed as an infinite continued fraction.",
        "√ 2 = 1 + 1/(2 + 1/(2 + 1/(2 + ... ))) = 1.414213...",
        "By expanding this for the first four iterations, we get:",
        "1 + 1/2 = 3/2 = 1.5",
        "1 + 1/(2 + 1/2) = 7/5 = 1.4",
        "1 + 1/(2 + 1/(2 + 1/2)) = 17/12 = 1.41666...",
        "1 + 1/(2 + 1/(2 + 1/(2 + 1/2))) = 41/29 = 1.41379...",
        "The next three expansions are 99/70, 239/169, and 577/408, but the eighth expansion, 1393/985, is the first example where the number of digits in the numerator exceeds the number of digits in the denominator.",
        "In the first one-thousand expansions, how many fractions contain a numerator with more digits than denominator?"
      ]
    },
    {
      "id": "5900f3a61000cf542c50feb9",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 58: Spiral primes",
      "tests": [
        "assert.strictEqual(euler58(), 26241, 'message: <code>euler58()</code> should return 26241.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler58() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler58();"
      ],
      "description": [
        "Starting with 1 and spiralling anticlockwise in the following way, a square spiral with side length 7 is formed.",
        "37 36 35 34 33 32 31",
        "38 17 16 15 14 13 30",
        "39 18  5  4  3 12 29",
        "40 19  6  1  2 11 28",
        "41 20  7  8  9 10 27",
        "42 21 22 23 24 25 2643 44 45 46 47 48 49",
        "It is interesting to note that the odd squares lie along the bottom right diagonal, but what is more interesting is that 8 out of the 13 numbers lying along both diagonals are prime; that is, a ratio of 8/13 ≈ 62%.",
        "If one complete new layer is wrapped around the spiral above, a square spiral with side length 9 will be formed. If this process is continued, what is the side length of the square spiral for which the ratio of primes along both diagonals first falls below 10%?"
      ]
    },
    {
      "id": "5900f3a81000cf542c50feba",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 59: XOR decryption",
      "tests": [
        "assert.strictEqual(euler59(), 107359, 'message: <code>euler59()</code> should return 107359.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler59() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler59();"
      ],
      "description": [
        "Each character on a computer is assigned a unique code and the preferred standard is ASCII (American Standard Code for Information Interchange). For example, uppercase A = 65, asterisk (*) = 42, and lowercase k = 107.",
        "A modern encryption method is to take a text file, convert the bytes to ASCII, then XOR each byte with a given value, taken from a secret key. The advantage with the XOR function is that using the same encryption key on the cipher text, restores the plain text; for example, 65 XOR 42 = 107, then 107 XOR 42 = 65.",
        "For unbreakable encryption, the key is the same length as the plain text message, and the key is made up of random bytes. The user would keep the encrypted message and the encryption key in different locations, and without both \"halves\", it is impossible to decrypt the message.",
        "Unfortunately, this method is impractical for most users, so the modified method is to use a password as a key. If the password is shorter than the message, which is likely, the key is repeated cyclically throughout the message. The balance for this method is using a sufficiently long password key for security, but short enough to be memorable.",
        "Your task has been made easy, as the encryption key consists of three lower case characters. Using cipher.txt (right click and 'Save Link/Target As...'), a file containing the encrypted ASCII codes, and the knowledge that the plain text must contain common English words, decrypt the message and find the sum of the ASCII values in the original text."
      ]
    },
    {
      "id": "5900f3a81000cf542c50febb",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 60: Prime pair sets",
      "tests": [
        "assert.strictEqual(euler60(), 26033, 'message: <code>euler60()</code> should return 26033.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler60() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler60();"
      ],
      "description": [
        "The primes 3, 7, 109, and 673, are quite remarkable. By taking any two primes and concatenating them in any order the result will always be prime. For example, taking 7 and 109, both 7109 and 1097 are prime. The sum of these four primes, 792, represents the lowest sum for a set of four primes with this property.",
        "Find the lowest sum for a set of five primes for which any two primes concatenate to produce another prime."
      ]
    },
    {
      "id": "5900f3a91000cf542c50febc",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 61: Cyclical figurate numbers",
      "tests": [
        "assert.strictEqual(euler61(), 28684, 'message: <code>euler61()</code> should return 28684.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler61() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler61();"
      ],
      "description": [
        "Triangle, square, pentagonal, hexagonal, heptagonal, and octagonal numbers are all figurate (polygonal) numbers and are generated by the following formulae:",
        "Triangle",
        " ",
        "P3,n=n(n+1)/2",
        " ",
        "1, 3, 6, 10, 15, ...",
        "Square",
        " ",
        "P4,n=n2",
        " ",
        "1, 4, 9, 16, 25, ...",
        "Pentagonal",
        " ",
        "P5,n=n(3n−1)/2",
        " ",
        "1, 5, 12, 22, 35, ...",
        "Hexagonal",
        " ",
        "P6,n=n(2n−1)",
        " ",
        "1, 6, 15, 28, 45, ...",
        "Heptagonal",
        " ",
        "P7,n=n(5n−3)/2",
        " ",
        "1, 7, 18, 34, 55, ...",
        "Octagonal",
        " ",
        "P8,n=n(3n−2)",
        " ",
        "1, 8, 21, 40, 65, ...",
        "The ordered set of three 4-digit numbers: 8128, 2882, 8281, has three interesting properties.",
        "The set is cyclic, in that the last two digits of each number is the first two digits of the next number (including the last number with the first).",
        "Each polygonal type: triangle (P3,127=8128), square (P4,91=8281), and pentagonal (P5,44=2882), is represented by a different number in the set.",
        "This is the only set of 4-digit numbers with this property.",
        "Find the sum of the only ordered set of six cyclic 4-digit numbers for which each polygonal type: triangle, square, pentagonal, hexagonal, heptagonal, and octagonal, is represented by a different number in the set."
      ]
    },
    {
      "id": "5900f3aa1000cf542c50febd",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 62: Cubic permutations",
      "tests": [
        "assert.strictEqual(euler62(), 127035954683, 'message: <code>euler62()</code> should return 127035954683.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler62() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler62();"
      ],
      "description": [
        "The cube, 41063625 (3453), can be permuted to produce two other cubes: 56623104 (3843) and 66430125 (4053). In fact, 41063625 is the smallest cube which has exactly three permutations of its digits which are also cube.",
        "Find the smallest cube for which exactly five permutations of its digits are cube."
      ]
    },
    {
      "id": "5900f3ab1000cf542c50febe",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 63: Powerful digit counts",
      "tests": [
        "assert.strictEqual(euler63(), 49, 'message: <code>euler63()</code> should return 49.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler63() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler63();"
      ],
      "description": [
        "The 5-digit number, 16807=75, is also a fifth power. Similarly, the 9-digit number, 134217728=89, is a ninth power.",
        "How many n-digit positive integers exist which are also an nth power?"
      ]
    },
    {
      "id": "5900f3ac1000cf542c50febf",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 64: Odd period square roots",
      "tests": [
        "assert.strictEqual(euler64(), 1322, 'message: <code>euler64()</code> should return 1322.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler64() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler64();"
      ],
      "description": [
        "All square roots are periodic when written as continued fractions and can be written in the form:",
        "",
        "√N = a0 +",
        "1",
        " ",
        "a1 +",
        "1",
        " ",
        " ",
        "a2 +",
        "1",
        " ",
        " ",
        " ",
        "a3 + ...",
        "",
        "For example, let us consider √23:",
        "",
        "√23 = 4 + √23 — 4 = 4 + ",
        "1",
        " = 4 + ",
        "1",
        " ",
        "1√23—4",
        " ",
        "1 + ",
        "√23 – 37",
        "",
        "If we continue we would get the following expansion:",
        "",
        "√23 = 4 +",
        "1",
        " ",
        "1 +",
        "1",
        " ",
        " ",
        "3 +",
        "1",
        " ",
        " ",
        " ",
        "1 +",
        "1",
        " ",
        " ",
        " ",
        " ",
        "8 + ...",
        "",
        "The process can be summarised as follows:",
        "",
        "a0 = 4,",
        " ",
        "1√23—4",
        " = ",
        "√23+47",
        " = 1 + ",
        "√23—37",
        "a1 = 1,",
        " ",
        "7√23—3",
        " = ",
        "7(√23+3)14",
        " = 3 + ",
        "√23—32",
        "a2 = 3,",
        " ",
        "2√23—3",
        " = ",
        "2(√23+3)14",
        " = 1 + ",
        "√23—47",
        "a3 = 1,",
        " ",
        "7√23—4",
        " = ",
        "7(√23+4)7",
        " = 8 + ",
        "√23—4",
        "a4 = 8,",
        " ",
        "1√23—4",
        " = ",
        "√23+47",
        " = 1 + ",
        "√23—37",
        "a5 = 1,",
        " ",
        "7√23—3",
        " = ",
        "7(√23+3)14",
        " = 3 + ",
        "√23—32",
        "a6 = 3,",
        " ",
        "2√23—3",
        " = ",
        "2(√23+3)14",
        " = 1 + ",
        "√23—47",
        "a7 = 1,",
        " ",
        "7√23—4",
        " = ",
        "7(√23+4)7",
        " = 8 + ",
        "√23—4",
        "",
        "It can be seen that the sequence is repeating. For conciseness, we use the notation √23 = [4;(1,3,1,8)], to indicate that the block (1,3,1,8) repeats indefinitely.",
        "",
        "The first ten continued fraction representations of (irrational) square roots are:",
        "√2=[1;(2)], period=1",
        "√3=[1;(1,2)], period=2",
        "√5=[2;(4)], period=1",
        "√6=[2;(2,4)], period=2",
        "√7=[2;(1,1,1,4)], period=4",
        "√8=[2;(1,4)], period=2",
        "√10=[3;(6)], period=1",
        "√11=[3;(3,6)], period=2",
        "√12= [3;(2,6)], period=2",
        "√13=[3;(1,1,1,1,6)], period=5",
        "Exactly four continued fractions, for N ≤ 13, have an odd period.",
        "How many continued fractions for N ≤ 10000 have an odd period?"
      ]
    },
    {
      "id": "5900f3ad1000cf542c50fec0",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 65: Convergents of e",
      "tests": [
        "assert.strictEqual(euler65(), 272, 'message: <code>euler65()</code> should return 272.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler65() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler65();"
      ],
      "description": [
        "The square root of 2 can be written as an infinite continued fraction.",
        "",
        "√2 = 1 +",
        "1",
        " ",
        "2 +",
        "1",
        " ",
        " ",
        "2 +",
        "1",
        " ",
        " ",
        " ",
        "2 +",
        "1",
        " ",
        " ",
        " ",
        " ",
        "2 + ...",
        "",
        "The infinite continued fraction can be written, √2 = [1;(2)], (2) indicates that 2 repeats ad infinitum. In a similar way, √23 = [4;(1,3,1,8)].",
        "It turns out that the sequence of partial values of continued fractions for square roots provide the best rational approximations. Let us consider the convergents for √2.",
        "",
        "",
        "1 +",
        "1",
        "= 3/2",
        " ",
        "2",
        " ",
        "1 +",
        "1",
        "= 7/5",
        " ",
        "2 +",
        "1",
        " ",
        " ",
        "2",
        " ",
        "1 +",
        "1",
        "= 17/12",
        " ",
        "2 +",
        "1",
        " ",
        " ",
        " ",
        "2 +",
        "1",
        " ",
        " ",
        " ",
        " ",
        "2",
        " ",
        "1 +",
        "1",
        "= 41/29",
        " ",
        "2 +",
        "1",
        " ",
        " ",
        "2 +",
        "1",
        " ",
        " ",
        " ",
        " ",
        "2 +",
        "1",
        " ",
        " ",
        " ",
        " ",
        " ",
        "2",
        " ",
        "",
        "Hence the sequence of the first ten convergents for √2 are:",
        "1, 3/2, 7/5, 17/12, 41/29, 99/70, 239/169, 577/408, 1393/985, 3363/2378, ...",
        "What is most surprising is that the important mathematical constant,e = [2; 1,2,1, 1,4,1, 1,6,1 , ... , 1,2k,1, ...].",
        "The first ten terms in the sequence of convergents for e are:",
        "2, 3, 8/3, 11/4, 19/7, 87/32, 106/39, 193/71, 1264/465, 1457/536, ...",
        "The sum of digits in the numerator of the 10th convergent is 1+4+5+7=17.",
        "Find the sum of digits in the numerator of the 100th convergent of the continued fraction for e."
      ]
    },
    {
      "id": "5900f3ae1000cf542c50fec1",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 66: Diophantine equation",
      "tests": [
        "assert.strictEqual(euler66(), 661, 'message: <code>euler66()</code> should return 661.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler66() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler66();"
      ],
      "description": [
        "Consider quadratic Diophantine equations of the form:",
        "x2 – Dy2 = 1",
        "For example, when D=13, the minimal solution in x is 6492 – 13×1802 = 1.",
        "It can be assumed that there are no solutions in positive integers when D is square.",
        "By finding minimal solutions in x for D = {2, 3, 5, 6, 7}, we obtain the following:",
        "32 – 2×22 = 1",
        "22 – 3×12 = 192 – 5×42 = 1",
        "52 – 6×22 = 1",
        "82 – 7×32 = 1",
        "Hence, by considering minimal solutions in x for D ≤ 7, the largest x is obtained when D=5.",
        "Find the value of D ≤ 1000 in minimal solutions of x for which the largest value of x is obtained."
      ]
    },
    {
      "id": "5900f3b01000cf542c50fec2",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 67: Maximum path sum II",
      "tests": [
        "assert.strictEqual(euler67(), 7273, 'message: <code>euler67()</code> should return 7273.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler67() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler67();"
      ],
      "description": [
        "By starting at the top of the triangle below and moving to adjacent numbers on the row below, the maximum total from top to bottom is 23.",
        "37 4",
        "2 4 6",
        "8 5 9 3",
        "That is, 3 + 7 + 4 + 9 = 23.",
        "Find the maximum total from top to bottom in triangle.txt (right click and 'Save Link/Target As...'), a 15K text file containing a triangle with one-hundred rows.",
        "NOTE: This is a much more difficult version of Problem 18. It is not possible to try every route to solve this problem, as there are 299 altogether! If you could check one trillion (1012) routes every second it would take over twenty billion years to check them all. There is an efficient algorithm to solve it. ;o)"
      ]
    },
    {
      "id": "5900f3b01000cf542c50fec3",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 68: Magic 5-gon ring",
      "tests": [
        "assert.strictEqual(euler68(), 6531031914842725, 'message: <code>euler68()</code> should return 6531031914842725.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler68() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler68();"
      ],
      "description": [
        "Consider the following \"magic\" 3-gon ring, filled with the numbers 1 to 6, and each line adding to nine.",
        "",
        "",
        "Working clockwise, and starting from the group of three with the numerically lowest external node (4,3,2 in this example), each solution can be described uniquely. For example, the above solution can be described by the set: 4,3,2; 6,2,1; 5,1,3.",
        "It is possible to complete the ring with four different totals: 9, 10, 11, and 12. There are eight solutions in total.",
        "",
        "TotalSolution Set",
        "94,2,3; 5,3,1; 6,1,2",
        "94,3,2; 6,2,1; 5,1,3",
        "102,3,5; 4,5,1; 6,1,3",
        "102,5,3; 6,3,1; 4,1,5",
        "111,4,6; 3,6,2; 5,2,4",
        "111,6,4; 5,4,2; 3,2,6",
        "121,5,6; 2,6,4; 3,4,5",
        "121,6,5; 3,5,4; 2,4,6",
        "",
        "By concatenating each group it is possible to form 9-digit strings; the maximum string for a 3-gon ring is 432621513.",
        "Using the numbers 1 to 10, and depending on arrangements, it is possible to form 16- and 17-digit strings. What is the maximum 16-digit string for a \"magic\" 5-gon ring?"
      ]
    },
    {
      "id": "5900f3b11000cf542c50fec4",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 69: Totient maximum",
      "tests": [
        "assert.strictEqual(euler69(), 510510, 'message: <code>euler69()</code> should return 510510.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler69() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler69();"
      ],
      "description": [
        "Euler's Totient function, φ(n) [sometimes called the phi function], is used to determine the number of numbers less than n which are relatively prime to n. For example, as 1, 2, 4, 5, 7, and 8, are all less than nine and relatively prime to nine, φ(9)=6.",
        "",
        "n",
        "Relatively Prime",
        "φ(n)",
        "n/φ(n)",
        "2",
        "1",
        "1",
        "2",
        "3",
        "1,2",
        "2",
        "1.5",
        "4",
        "1,3",
        "2",
        "2",
        "5",
        "1,2,3,4",
        "4",
        "1.25",
        "6",
        "1,5",
        "2",
        "3",
        "7",
        "1,2,3,4,5,6",
        "6",
        "1.1666...",
        "8",
        "1,3,5,7",
        "4",
        "2",
        "9",
        "1,2,4,5,7,8",
        "6",
        "1.5",
        "10",
        "1,3,7,9",
        "4",
        "2.5",
        "",
        "It can be seen that n=6 produces a maximum n/φ(n) for n ≤ 10.",
        "Find the value of n ≤ 1,000,000 for which n/φ(n) is a maximum."
      ]
    },
    {
      "id": "5900f3b21000cf542c50fec5",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 70: Totient permutation",
      "tests": [
        "assert.strictEqual(euler70(), 8319823, 'message: <code>euler70()</code> should return 8319823.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler70() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler70();"
      ],
      "description": [
        "Euler's Totient function, φ(n) [sometimes called the phi function], is used to determine the number of positive numbers less than or equal to n which are relatively prime to n. For example, as 1, 2, 4, 5, 7, and 8, are all less than nine and relatively prime to nine, φ(9)=6.The number 1 is considered to be relatively prime to every positive number, so φ(1)=1. ",
        "Interestingly, φ(87109)=79180, and it can be seen that 87109 is a permutation of 79180.",
        "Find the value of n, 1 < n < 107, for which φ(n) is a permutation of n and the ratio n/φ(n) produces a minimum."
      ]
    },
    {
      "id": "5900f3b31000cf542c50fec6",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 71: Ordered fractions",
      "tests": [
        "assert.strictEqual(euler71(), 428570, 'message: <code>euler71()</code> should return 428570.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler71() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler71();"
      ],
      "description": [
        "Consider the fraction, n/d, where n and d are positive integers. If n<d and HCF(n,d)=1, it is called a reduced proper fraction.",
        "If we list the set of reduced proper fractions for d ≤ 8 in ascending order of size, we get:",
        "1/8, 1/7, 1/6, 1/5, 1/4, 2/7, 1/3, 3/8, 2/5, 3/7, 1/2, 4/7, 3/5, 5/8, 2/3, 5/7, 3/4, 4/5, 5/6, 6/7, 7/8",
        "It can be seen that 2/5 is the fraction immediately to the left of 3/7.",
        "By listing the set of reduced proper fractions for d ≤ 1,000,000 in ascending order of size, find the numerator of the fraction immediately to the left of 3/7."
      ]
    },
    {
      "id": "5900f3b41000cf542c50fec7",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 72: Counting fractions",
      "tests": [
        "assert.strictEqual(euler72(), 303963552391, 'message: <code>euler72()</code> should return 303963552391.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler72() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler72();"
      ],
      "description": [
        "Consider the fraction, n/d, where n and d are positive integers. If n<d and HCF(n,d)=1, it is called a reduced proper fraction.",
        "If we list the set of reduced proper fractions for d ≤ 8 in ascending order of size, we get:",
        "1/8, 1/7, 1/6, 1/5, 1/4, 2/7, 1/3, 3/8, 2/5, 3/7, 1/2, 4/7, 3/5, 5/8, 2/3, 5/7, 3/4, 4/5, 5/6, 6/7, 7/8",
        "It can be seen that there are 21 elements in this set.",
        "How many elements would be contained in the set of reduced proper fractions for d ≤ 1,000,000?"
      ]
    },
    {
      "id": "5900f3b61000cf542c50fec8",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 73: Counting fractions in a range",
      "tests": [
        "assert.strictEqual(euler73(), 7295372, 'message: <code>euler73()</code> should return 7295372.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler73() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler73();"
      ],
      "description": [
        "Consider the fraction, n/d, where n and d are positive integers. If n<d and HCF(n,d)=1, it is called a reduced proper fraction.",
        "If we list the set of reduced proper fractions for d ≤ 8 in ascending order of size, we get:",
        "1/8, 1/7, 1/6, 1/5, 1/4, 2/7, 1/3, 3/8, 2/5, 3/7, 1/2, 4/7, 3/5, 5/8, 2/3, 5/7, 3/4, 4/5, 5/6, 6/7, 7/8",
        "It can be seen that there are 3 fractions between 1/3 and 1/2.",
        "How many fractions lie between 1/3 and 1/2 in the sorted set of reduced proper fractions for d ≤ 12,000?"
      ]
    },
    {
      "id": "5900f3b61000cf542c50fec9",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 74: Digit factorial chains",
      "tests": [
        "assert.strictEqual(euler74(), 402, 'message: <code>euler74()</code> should return 402.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler74() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler74();"
      ],
      "description": [
        "The number 145 is well known for the property that the sum of the factorial of its digits is equal to 145:",
        "1! + 4! + 5! = 1 + 24 + 120 = 145",
        "Perhaps less well known is 169, in that it produces the longest chain of numbers that link back to 169; it turns out that there are only three such loops that exist:",
        "169 → 363601 → 1454 → 169",
        "871 → 45361 → 871",
        "872 → 45362 → 872",
        "It is not difficult to prove that EVERY starting number will eventually get stuck in a loop. For example,",
        "69 → 363600 → 1454 → 169 → 363601 (→ 1454)",
        "78 → 45360 → 871 → 45361 (→ 871)",
        "540 → 145 (→ 145)",
        "Starting with 69 produces a chain of five non-repeating terms, but the longest non-repeating chain with a starting number below one million is sixty terms.",
        "How many chains, with a starting number below one million, contain exactly sixty non-repeating terms?"
      ]
    },
    {
      "id": "5900f3b71000cf542c50feca",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 75: Singular integer right triangles",
      "tests": [
        "assert.strictEqual(euler75(), 161667, 'message: <code>euler75()</code> should return 161667.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler75() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler75();"
      ],
      "description": [
        "It turns out that 12 cm is the smallest length of wire that can be bent to form an integer sided right angle triangle in exactly one way, but there are many more examples.",
        "12 cm: (3,4,5)24 cm: (6,8,10)30 cm: (5,12,13)36 cm: (9,12,15)40 cm: (8,15,17)48 cm: (12,16,20)",
        "In contrast, some lengths of wire, like 20 cm, cannot be bent to form an integer sided right angle triangle, and other lengths allow more than one solution to be found; for example, using 120 cm it is possible to form exactly three different integer sided right angle triangles.",
        "120 cm: (30,40,50), (20,48,52), (24,45,51)",
        "Given that L is the length of the wire, for how many values of L ≤ 1,500,000 can exactly one integer sided right angle triangle be formed?"
      ]
    },
    {
      "id": "5900f3b81000cf542c50fecb",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 76: Counting summations",
      "tests": [
        "assert.strictEqual(euler76(), 190569291, 'message: <code>euler76()</code> should return 190569291.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler76() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler76();"
      ],
      "description": [
        "It is possible to write five as a sum in exactly six different ways:",
        "4 + 1",
        "3 + 2",
        "3 + 1 + 1",
        "2 + 2 + 1",
        "2 + 1 + 1 + 1",
        "1 + 1 + 1 + 1 + 1",
        "How many different ways can one hundred be written as a sum of at least two positive integers?"
      ]
    },
    {
      "id": "5900f3b91000cf542c50fecc",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 77: Prime summations",
      "tests": [
        "assert.strictEqual(euler77(), 71, 'message: <code>euler77()</code> should return 71.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler77() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler77();"
      ],
      "description": [
        "It is possible to write ten as the sum of primes in exactly five different ways:",
        "7 + 3",
        "5 + 5",
        "5 + 3 + 2",
        "3 + 3 + 2 + 2",
        "2 + 2 + 2 + 2 + 2",
        "What is the first value which can be written as the sum of primes in over five thousand different ways?"
      ]
    },
    {
      "id": "5900f3ba1000cf542c50fecd",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 78: Coin partitions",
      "tests": [
        "assert.strictEqual(euler78(), 55374, 'message: <code>euler78()</code> should return 55374.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler78() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler78();"
      ],
      "description": [
        "Let p(n) represent the number of different ways in which n coins can be separated into piles. For example, five coins can be separated into piles in exactly seven different ways, so p(5)=7.",
        "",
        "OOOOO",
        "OOOO   O",
        "OOO   OO",
        "OOO   O   O",
        "OO   OO   O",
        "OO   O   O   O",
        "O   O   O   O   O",
        "",
        "Find the least value of n for which p(n) is divisible by one million."
      ]
    },
    {
      "id": "5900f3bb1000cf542c50fece",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 79: Passcode derivation",
      "tests": [
        "assert.strictEqual(euler79(), 73162890, 'message: <code>euler79()</code> should return 73162890.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler79() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler79();"
      ],
      "description": [
        "A common security method used for online banking is to ask the user for three random characters from a passcode. For example, if the passcode was 531278, they may ask for the 2nd, 3rd, and 5th characters; the expected reply would be: 317.",
        "The text file, keylog.txt, contains fifty successful login attempts.",
        "Given that the three characters are always asked for in order, analyse the file so as to determine the shortest possible secret passcode of unknown length."
      ]
    },
    {
      "id": "5900f3bc1000cf542c50fecf",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 80: Square root digital expansion",
      "tests": [
        "assert.strictEqual(euler80(), 40886, 'message: <code>euler80()</code> should return 40886.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler80() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler80();"
      ],
      "description": [
        "It is well known that if the square root of a natural number is not an integer, then it is irrational. The decimal expansion of such square roots is infinite without any repeating pattern at all.",
        "The square root of two is 1.41421356237309504880..., and the digital sum of the first one hundred decimal digits is 475.",
        "For the first one hundred natural numbers, find the total of the digital sums of the first one hundred decimal digits for all the irrational square roots."
      ]
    },
    {
      "id": "5900f3bd1000cf542c50fed0",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 81: Path sum: two ways",
      "tests": [
        "assert.strictEqual(euler81(), 427337, 'message: <code>euler81()</code> should return 427337.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler81() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler81();"
      ],
      "description": [
        "In the 5 by 5 matrix below, the minimal path sum from the top left to the bottom right, by only moving to the right and down, is indicated in bold red and is equal to 2427.",
        "",
        "$$",
        "\\begin{pmatrix}",
        "\\color{red}{131} & 673 & 234 & 103 & 18\\\\",
        "\\color{red}{201} & \\color{red}{96} & \\color{red}{342} & 965 & 150\\\\",
        "630 & 803 & \\color{red}{746} & \\color{red}{422} & 111\\\\",
        "537 & 699 & 497 & \\color{red}{121} & 956\\\\",
        "805 & 732 & 524 & \\color{red}{37} & \\color{red}{331}",
        "\\end{pmatrix}",
        "$$",
        "",
        "Find the minimal path sum, in matrix.txt (right click and \"Save Link/Target As...\"), a 31K text file containing a 80 by 80 matrix, from the top left to the bottom right by only moving right and down."
      ]
    },
    {
      "id": "5900f3be1000cf542c50fed1",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 82: Path sum: three ways",
      "tests": [
        "assert.strictEqual(euler82(), 260324, 'message: <code>euler82()</code> should return 260324.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler82() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler82();"
      ],
      "description": [
        "NOTE: This problem is a more challenging version of Problem 81.",
        "The minimal path sum in the 5 by 5 matrix below, by starting in any cell in the left column and finishing in any cell in the right column, and only moving up, down, and right, is indicated in red and bold; the sum is equal to 994.",
        "",
        "$$",
        "\\begin{pmatrix}",
        "131 & 673 & \\color{red}{234} & \\color{red}{103} & \\color{red}{18}\\\\",
        "\\color{red}{201} & \\color{red}{96} & \\color{red}{342} & 965 & 150\\\\",
        "630 & 803 & 746 & 422 & 111\\\\",
        "537 & 699 & 497 & 121 & 956\\\\",
        "805 & 732 & 524 & 37 & 331",
        "\\end{pmatrix}",
        "$$",
        "",
        "Find the minimal path sum, in matrix.txt (right click and \"Save Link/Target As...\"), a 31K text file containing a 80 by 80 matrix, from the left column to the right column."
      ]
    },
    {
      "id": "5900f3bf1000cf542c50fed2",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 83: Path sum: four ways",
      "tests": [
        "assert.strictEqual(euler83(), 425185, 'message: <code>euler83()</code> should return 425185.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler83() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler83();"
      ],
      "description": [
        "NOTE: This problem is a significantly more challenging version of Problem 81.",
        "In the 5 by 5 matrix below, the minimal path sum from the top left to the bottom right, by moving left, right, up, and down, is indicated in bold red and is equal to 2297.",
        "",
        "$$",
        "\\begin{pmatrix}",
        "\\color{red}{131} & 673 & \\color{red}{234} & \\color{red}{103} & \\color{red}{18}\\\\",
        "\\color{red}{201} & \\color{red}{96} & \\color{red}{342} & 965 & \\color{red}{150}\\\\",
        "630 & 803 & 746 & \\color{red}{422} & \\color{red}{111}\\\\",
        "537 & 699 & 497 & \\color{red}{121} & 956\\\\",
        "805 & 732 & 524 & \\color{red}{37} & \\color{red}{331}",
        "\\end{pmatrix}",
        "$$",
        "",
        "Find the minimal path sum, in matrix.txt (right click and ",
        "\"Save Link/Target As...\"), a 31K text file containing a 80 by 80 matrix, from the top left to the bottom right by moving left, right, up, and down."
      ]
    },
    {
      "id": "5900f3c11000cf542c50fed3",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 84: Monopoly odds",
      "tests": [
        "assert.strictEqual(euler84(), 101524, 'message: <code>euler84()</code> should return 101524.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler84() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler84();"
      ],
      "description": [
        "In the game, Monopoly, the standard board is set up in the following way:",
        "",
        "GO",
        "A1",
        "CC1",
        "A2",
        "T1",
        "R1",
        "B1",
        "CH1",
        "B2",
        "B3",
        "JAIL",
        "H2",
        " ",
        "C1",
        "T2",
        " ",
        "U1",
        "H1",
        " ",
        "C2",
        "CH3",
        " ",
        "C3",
        "R4",
        " ",
        "R2",
        "G3",
        " ",
        "D1",
        "CC3",
        " ",
        "CC2",
        "G2",
        " ",
        "D2",
        "G1",
        " ",
        "D3",
        "G2J",
        "F3",
        "U2",
        "F2",
        "F1",
        "R3",
        "E3",
        "E2",
        "CH2",
        "E1",
        "FP",
        "",
        "A player starts on the GO square and adds the scores on two 6-sided dice to determine the number of squares they advance in a clockwise direction. Without any further rules we would expect to visit each square with equal probability: 2.5%. However, landing on G2J (Go To Jail), CC (community chest), and CH (chance) changes this distribution.",
        "In addition to G2J, and one card from each of CC and CH, that orders the player to go directly to jail, if a player rolls three consecutive doubles, they do not advance the result of their 3rd roll. Instead they proceed directly to jail.",
        "At the beginning of the game, the CC and CH cards are shuffled. When a player lands on CC or CH they take a card from the top of the respective pile and, after following the instructions, it is returned to the bottom of the pile. There are sixteen cards in each pile, but for the purpose of this problem we are only concerned with cards that order a movement; any instruction not concerned with movement will be ignored and the player will remain on the CC/CH square.",
        "Community Chest (2/16 cards):",
        "Advance to GO",
        "Go to JAIL",
        "",
        "Chance (10/16 cards):",
        "Advance to GO",
        "Go to JAIL",
        "Go to C1",
        "Go to E3",
        "Go to H2",
        "Go to R1",
        "Go to next R (railway company)",
        "Go to next R",
        "Go to next U (utility company)",
        "Go back 3 squares.",
        "",
        "The heart of this problem concerns the likelihood of visiting a particular square. That is, the probability of finishing at that square after a roll. For this reason it should be clear that, with the exception of G2J for which the probability of finishing on it is zero, the CH squares will have the lowest probabilities, as 5/8 request a movement to another square, and it is the final square that the player finishes at on each roll that we are interested in. We shall make no distinction between \"Just Visiting\" and being sent to JAIL, and we shall also ignore the rule about requiring a double to \"get out of jail\", assuming that they pay to get out on their next turn.",
        "By starting at GO and numbering the squares sequentially from 00 to 39 we can concatenate these two-digit numbers to produce strings that correspond with sets of squares.",
        "Statistically it can be shown that the three most popular squares, in order, are JAIL (6.24%) = Square 10, E3 (3.18%) = Square 24, and GO (3.09%) = Square 00. So these three most popular squares can be listed with the six-digit modal string: 102400.",
        "If, instead of using two 6-sided dice, two 4-sided dice are used, find the six-digit modal string."
      ]
    },
    {
      "id": "5900f3c11000cf542c50fed4",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 85: Counting rectangles",
      "tests": [
        "assert.strictEqual(euler85(), 2772, 'message: <code>euler85()</code> should return 2772.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler85() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler85();"
      ],
      "description": [
        "By counting carefully it can be seen that a rectangular grid measuring 3 by 2 contains eighteen rectangles:",
        "",
        "",
        "Although there exists no rectangular grid that contains exactly two million rectangles, find the area of the grid with the nearest solution."
      ]
    },
    {
      "id": "5900f3c31000cf542c50fed5",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 86: Cuboid route",
      "tests": [
        "assert.strictEqual(euler86(), 1818, 'message: <code>euler86()</code> should return 1818.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler86() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler86();"
      ],
      "description": [
        "A spider, S, sits in one corner of a cuboid room, measuring 6 by 5 by 3, and a fly, F, sits in the opposite corner. By travelling on the surfaces of the room the shortest \"straight line\" distance from S to F is 10 and the path is shown on the diagram.",
        "",
        "",
        "However, there are up to three \"shortest\" path candidates for any given cuboid and the shortest route doesn't always have integer length.",
        "It can be shown that there are exactly 2060 distinct cuboids, ignoring rotations, with integer dimensions, up to a maximum size of M by M by M, for which the shortest route has integer length when M = 100. This is the least value of M for which the number of solutions first exceeds two thousand; the number of solutions when M = 99 is 1975.",
        "Find the least value of M such that the number of solutions first exceeds one million."
      ]
    },
    {
      "id": "5900f3c51000cf542c50fed8",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 87: Prime power triples",
      "tests": [
        "assert.strictEqual(euler87(), 1097343, 'message: <code>euler87()</code> should return 1097343.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler87() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler87();"
      ],
      "description": [
        "The smallest number expressible as the sum of a prime square, prime cube, and prime fourth power is 28. In fact, there are exactly four numbers below fifty that can be expressed in such a way:",
        "28 = 22 + 23 + 24",
        "33 = 32 + 23 + 24",
        "49 = 52 + 23 + 24",
        "47 = 22 + 33 + 24",
        "How many numbers below fifty million can be expressed as the sum of a prime square, prime cube, and prime fourth power?"
      ]
    },
    {
      "id": "5900f3c51000cf542c50fed6",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 88: Product-sum numbers",
      "tests": [
        "assert.strictEqual(euler88(), 7587457, 'message: <code>euler88()</code> should return 7587457.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler88() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler88();"
      ],
      "description": [
        "A natural number, N, that can be written as the sum and product of a given set of at least two natural numbers, {a1, a2, ... , ak} is called a product-sum number: N = a1 + a2 + ... + ak = a1 × a2 × ... × ak.",
        "For example, 6 = 1 + 2 + 3 = 1 × 2 × 3.",
        "For a given set of size, k, we shall call the smallest N with this property a minimal product-sum number. The minimal product-sum numbers for sets of size, k = 2, 3, 4, 5, and 6 are as follows.",
        "k=2: 4 = 2 × 2 = 2 + 2k=3: 6 = 1 × 2 × 3 = 1 + 2 + 3k=4: 8 = 1 × 1 × 2 × 4 = 1 + 1 + 2 + 4k=5: 8 = 1 × 1 × 2 × 2 × 2  = 1 + 1 + 2 + 2 + 2k=6: 12 = 1 × 1 × 1 × 1 × 2 × 6 = 1 + 1 + 1 + 1 + 2 + 6",
        "Hence for 2≤k≤6, the sum of all the minimal product-sum numbers is 4+6+8+12 = 30; note that 8 is only counted once in the sum.",
        "In fact, as the complete set of minimal product-sum numbers for 2≤k≤12 is {4, 6, 8, 12, 15, 16}, the sum is 61.",
        "What is the sum of all the minimal product-sum numbers for 2≤k≤12000?"
      ]
    },
    {
      "id": "5900f3c51000cf542c50fed7",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 89: Roman numerals",
      "tests": [
        "assert.strictEqual(euler89(), 743, 'message: <code>euler89()</code> should return 743.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler89() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler89();"
      ],
      "description": [
        "For a number written in Roman numerals to be considered valid there are basic rules which must be followed. Even though the rules allow some numbers to be expressed in more than one way there is always a \"best\" way of writing a particular number.",
        "For example, it would appear that there are at least six ways of writing the number sixteen:",
        "IIIIIIIIIIIIIIII",
        "VIIIIIIIIIII",
        "VVIIIIII",
        "XIIIIII",
        "VVVI",
        "XVI",
        "However, according to the rules only XIIIIII and XVI are valid, and the last example is considered to be the most efficient, as it uses the least number of numerals.",
        "The 11K text file, roman.txt (right click and 'Save Link/Target As...'), contains one thousand numbers written in valid, but not necessarily minimal, Roman numerals; see About... Roman Numerals for the definitive rules for this problem.",
        "Find the number of characters saved by writing each of these in their minimal form.",
        "Note: You can assume that all the Roman numerals in the file contain no more than four consecutive identical units."
      ]
    },
    {
      "id": "5900f3c61000cf542c50fed9",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 90: Cube digit pairs",
      "tests": [
        "assert.strictEqual(euler90(), 1217, 'message: <code>euler90()</code> should return 1217.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler90() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler90();"
      ],
      "description": [
        "Each of the six faces on a cube has a different digit (0 to 9) written on it; the same is done to a second cube. By placing the two cubes side-by-side in different positions we can form a variety of 2-digit numbers.",
        "",
        "For example, the square number 64 could be formed:",
        "",
        "",
        "",
        "",
        "In fact, by carefully choosing the digits on both cubes it is possible to display all of the square numbers below one-hundred: 01, 04, 09, 16, 25, 36, 49, 64, and 81.",
        "",
        "For example, one way this can be achieved is by placing {0, 5, 6, 7, 8, 9} on one cube and {1, 2, 3, 4, 8, 9} on the other cube.",
        "",
        "However, for this problem we shall allow the 6 or 9 to be turned upside-down so that an arrangement like {0, 5, 6, 7, 8, 9} and {1, 2, 3, 4, 6, 7} allows for all nine square numbers to be displayed; otherwise it would be impossible to obtain 09.",
        "",
        "In determining a distinct arrangement we are interested in the digits on each cube, not the order.",
        "",
        "{1, 2, 3, 4, 5, 6} is equivalent to {3, 6, 4, 1, 2, 5}",
        "{1, 2, 3, 4, 5, 6} is distinct from {1, 2, 3, 4, 5, 9}",
        "",
        "But because we are allowing 6 and 9 to be reversed, the two distinct sets in the last example both represent the extended set {1, 2, 3, 4, 5, 6, 9} for the purpose of forming 2-digit numbers.",
        "",
        "How many distinct arrangements of the two cubes allow for all of the square numbers to be displayed?"
      ]
    },
    {
      "id": "5900f3c71000cf542c50feda",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 91: Right triangles with integer coordinates",
      "tests": [
        "assert.strictEqual(euler91(), 14234, 'message: <code>euler91()</code> should return 14234.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler91() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler91();"
      ],
      "description": [
        "The points P (x1, y1) and Q (x2, y2) are plotted at integer co-ordinates and are joined to the origin, O(0,0), to form ΔOPQ.",
        "",
        "",
        "",
        "",
        "There are exactly fourteen triangles containing a right angle that can be formed when each co-ordinate lies between 0 and 2 inclusive; that is,0 ≤ x1, y1, x2, y2 ≤ 2.",
        "",
        "",
        "",
        "",
        "Given that 0 ≤ x1, y1, x2, y2 ≤ 50, how many right triangles can be formed?"
      ]
    },
    {
      "id": "5900f3c81000cf542c50fedb",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 92: Square digit chains",
      "tests": [
        "assert.strictEqual(euler92(), 8581146, 'message: <code>euler92()</code> should return 8581146.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler92() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler92();"
      ],
      "description": [
        "A number chain is created by continuously adding the square of the digits in a number to form a new number until it has been seen before.",
        "For example,",
        "44 → 32 → 13 → 10 → 1 → 1",
        "85 → 89 → 145 → 42 → 20 → 4 → 16 → 37 → 58 → 89",
        "Therefore any chain that arrives at 1 or 89 will become stuck in an endless loop. What is most amazing is that EVERY starting number will eventually arrive at 1 or 89.",
        "How many starting numbers below ten million will arrive at 89?"
      ]
    },
    {
      "id": "5900f3ca1000cf542c50fedc",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 93: Arithmetic expressions",
      "tests": [
        "assert.strictEqual(euler93(), 1258, 'message: <code>euler93()</code> should return 1258.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler93() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler93();"
      ],
      "description": [
        "By using each of the digits from the set, {1, 2, 3, 4}, exactly once, and making use of the four arithmetic operations (+, −, *, /) and brackets/parentheses, it is possible to form different positive integer targets.",
        "For example,",
        "8 = (4 * (1 + 3)) / 2",
        "14 = 4 * (3 + 1 / 2)",
        "19 = 4 * (2 + 3) − 1",
        "36 = 3 * 4 * (2 + 1)",
        "Note that concatenations of the digits, like 12 + 34, are not allowed.",
        "Using the set, {1, 2, 3, 4}, it is possible to obtain thirty-one different target numbers of which 36 is the maximum, and each of the numbers 1 to 28 can be obtained before encountering the first non-expressible number.",
        "Find the set of four distinct digits, a < b < c < d, for which the longest set of consecutive positive integers, 1 to n, can be obtained, giving your answer as a string: abcd."
      ]
    },
    {
      "id": "5900f3ca1000cf542c50fedd",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 94: Almost equilateral triangles",
      "tests": [
        "assert.strictEqual(euler94(), 518408346, 'message: <code>euler94()</code> should return 518408346.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler94() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler94();"
      ],
      "description": [
        "It is easily proved that no equilateral triangle exists with integral length sides and integral area. However, the almost equilateral triangle 5-5-6 has an area of 12 square units.",
        "We shall define an almost equilateral triangle to be a triangle for which two sides are equal and the third differs by no more than one unit.",
        "Find the sum of the perimeters of all almost equilateral triangles with integral side lengths and area and whose perimeters do not exceed one billion (1,000,000,000)."
      ]
    },
    {
      "id": "5900f3cc1000cf542c50fede",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 95: Amicable chains",
      "tests": [
        "assert.strictEqual(euler95(), 14316, 'message: <code>euler95()</code> should return 14316.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler95() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler95();"
      ],
      "description": [
        "The proper divisors of a number are all the divisors excluding the number itself. For example, the proper divisors of 28 are 1, 2, 4, 7, and 14. As the sum of these divisors is equal to 28, we call it a perfect number.",
        "Interestingly the sum of the proper divisors of 220 is 284 and the sum of the proper divisors of 284 is 220, forming a chain of two numbers. For this reason, 220 and 284 are called an amicable pair.",
        "Perhaps less well known are longer chains. For example, starting with 12496, we form a chain of five numbers:",
        "12496 → 14288 → 15472 → 14536 → 14264 (→ 12496 → ...)",
        "Since this chain returns to its starting point, it is called an amicable chain.",
        "Find the smallest member of the longest amicable chain with no element exceeding one million."
      ]
    },
    {
      "id": "5900f3cc1000cf542c50fedf",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 96: Su Doku",
      "tests": [
        "assert.strictEqual(euler96(), 24702, 'message: <code>euler96()</code> should return 24702.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler96() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler96();"
      ],
      "description": [
        "Su Doku (Japanese meaning number place) is the name given to a popular puzzle concept. Its origin is unclear, but credit must be attributed to Leonhard Euler who invented a similar, and much more difficult, puzzle idea called Latin Squares. The objective of Su Doku puzzles, however, is to replace the blanks (or zeros) in a 9 by 9 grid in such that each row, column, and 3 by 3 box contains each of the digits 1 to 9. Below is an example of a typical starting puzzle grid and its solution grid.",
        "",
        "",
        "0 0 39 0 00 0 1",
        "0 2 03 0 58 0 6",
        "6 0 00 0 14 0 0",
        "0 0 87 0 00 0 6",
        "1 0 20 0 07 0 8",
        "9 0 00 0 82 0 0",
        "0 0 28 0 00 0 5",
        "6 0 92 0 30 1 0",
        "5 0 00 0 93 0 0",
        "",
        "",
        "",
        "4 8 39 6 72 5 1",
        "9 2 13 4 58 7 6",
        "6 5 78 2 14 9 3",
        "5 4 87 2 91 3 6",
        "1 3 25 6 47 9 8",
        "9 7 61 3 82 4 5",
        "3 7 28 1 46 9 5",
        "6 8 92 5 34 1 7",
        "5 1 47 6 93 8 2",
        "",
        "",
        "A well constructed Su Doku puzzle has a unique solution and can be solved by logic, although it may be necessary to employ \"guess and test\" methods in order to eliminate options (there is much contested opinion over this). The complexity of the search determines the difficulty of the puzzle; the example above is considered easy because it can be solved by straight forward direct deduction.",
        "The 6K text file, sudoku.txt (right click and 'Save Link/Target As...'), contains fifty different Su Doku puzzles ranging in difficulty, but all with unique solutions (the first puzzle in the file is the example above).",
        "By solving all fifty puzzles find the sum of the 3-digit numbers found in the top left corner of each solution grid; for example, 483 is the 3-digit number found in the top left corner of the solution grid above."
      ]
    },
    {
      "id": "5900f3ce1000cf542c50fee0",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 97: Large non-Mersenne prime",
      "tests": [
        "assert.strictEqual(euler97(), 8739992577, 'message: <code>euler97()</code> should return 8739992577.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler97() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler97();"
      ],
      "description": [
        "The first known prime found to exceed one million digits was discovered in 1999, and is a Mersenne prime of the form 26972593−1; it contains exactly 2,098,960 digits. Subsequently other Mersenne primes, of the form 2p−1, have been found which contain more digits.",
        "However, in 2004 there was found a massive non-Mersenne prime which contains 2,357,207 digits: 28433×27830457+1.",
        "Find the last ten digits of this prime number."
      ]
    },
    {
      "id": "5900f3cf1000cf542c50fee1",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 98: Anagramic squares",
      "tests": [
        "assert.strictEqual(euler98(), 18769, 'message: <code>euler98()</code> should return 18769.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler98() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler98();"
      ],
      "description": [
        "By replacing each of the letters in the word CARE with 1, 2, 9, and 6 respectively, we form a square number: 1296 = 362. What is remarkable is that, by using the same digital substitutions, the anagram, RACE, also forms a square number: 9216 = 962. We shall call CARE (and RACE) a square anagram word pair and specify further that leading zeroes are not permitted, neither may a different letter have the same digital value as another letter.",
        "Using words.txt (right click and 'Save Link/Target As...'), a 16K text file containing nearly two-thousand common English words, find all the square anagram word pairs (a palindromic word is NOT considered to be an anagram of itself).",
        "What is the largest square number formed by any member of such a pair?",
        "NOTE: All anagrams formed must be contained in the given text file."
      ]
    },
    {
      "id": "5900f3d01000cf542c50fee2",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 99: Largest exponential",
      "tests": [
        "assert.strictEqual(euler99(), 709, 'message: <code>euler99()</code> should return 709.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler99() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler99();"
      ],
      "description": [
        "Comparing two numbers written in index form like 211 and 37 is not difficult, as any calculator would confirm that 211 = 2048 < 37 = 2187.",
        "However, confirming that 632382518061 > 519432525806 would be much more difficult, as both numbers contain over three million digits.",
        "Using base_exp.txt (right click and 'Save Link/Target As...'), a 22K text file containing one thousand lines with a base/exponent pair on each line, determine which line number has the greatest numerical value.",
        "NOTE: The first two lines in the file represent the numbers in the example given above."
      ]
    },
    {
      "id": "5900f3d01000cf542c50fee3",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 100: Arranged probability",
      "tests": [
        "assert.strictEqual(euler100(), 756872327473, 'message: <code>euler100()</code> should return 756872327473.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler100() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler100();"
      ],
      "description": [
        "If a box contains twenty-one coloured discs, composed of fifteen blue discs and six red discs, and two discs were taken at random, it can be seen that the probability of taking two blue discs, P(BB) = (15/21)×(14/20) = 1/2.",
        "The next such arrangement, for which there is exactly 50% chance of taking two blue discs at random, is a box containing eighty-five blue discs and thirty-five red discs.",
        "By finding the first arrangement to contain over 1012 = 1,000,000,000,000 discs in total, determine the number of blue discs that the box would contain."
      ]
    },
    {
      "id": "5900f3d21000cf542c50fee4",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 101: Optimum polynomial",
      "tests": [
        "assert.strictEqual(euler101(), 37076114526, 'message: <code>euler101()</code> should return 37076114526.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler101() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler101();"
      ],
      "description": [
        "If we are presented with the first k terms of a sequence it is impossible to say with certainty the value of the next term, as there are infinitely many polynomial functions that can model the sequence.",
        "As an example, let us consider the sequence of cube numbers. This is defined by the generating function, un = n3: 1, 8, 27, 64, 125, 216, ...",
        "Suppose we were only given the first two terms of this sequence. Working on the principle that \"simple is best\" we should assume a linear relationship and predict the next term to be 15 (common difference 7). Even if we were presented with the first three terms, by the same principle of simplicity, a quadratic relationship should be assumed.",
        "We shall define OP(k, n) to be the nth term of the optimum polynomial generating function for the first k terms of a sequence. It should be clear that OP(k, n) will accurately generate the terms of the sequence for n ≤ k, and potentially the first incorrect term (FIT) will be OP(k, k+1); in which case we shall call it a bad OP (BOP).",
        "As a basis, if we were only given the first term of sequence, it would be most sensible to assume constancy; that is, for n ≥ 2, OP(1, n) = u1.",
        "Hence we obtain the following OPs for the cubic sequence:",
        "",
        "OP(1, n) = 1",
        "1, 1, 1, 1, ...",
        "OP(2, n) = 7n−6",
        "1, 8, 15, ...",
        "OP(3, n) = 6n2−11n+6     ",
        "1, 8, 27, 58, ...",
        "OP(4, n) = n3",
        "1, 8, 27, 64, 125, ...",
        "",
        "Clearly no BOPs exist for k ≥ 4.",
        "By considering the sum of FITs generated by the BOPs (indicated in red above), we obtain 1 + 15 + 58 = 74.",
        "Consider the following tenth degree polynomial generating function:",
        "un = 1 − n + n2 − n3 + n4 − n5 + n6 − n7 + n8 − n9 + n10",
        "Find the sum of FITs for the BOPs."
      ]
    },
    {
      "id": "5900f3d21000cf542c50fee5",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 102: Triangle containment",
      "tests": [
        "assert.strictEqual(euler102(), 228, 'message: <code>euler102()</code> should return 228.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler102() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler102();"
      ],
      "description": [
        "Three distinct points are plotted at random on a Cartesian plane, for which -1000 ≤ x, y ≤ 1000, such that a triangle is formed.",
        "Consider the following two triangles:",
        "A(-340,495), B(-153,-910), C(835,-947)",
        "X(-175,41), Y(-421,-714), Z(574,-645)",
        "It can be verified that triangle ABC contains the origin, whereas triangle XYZ does not.",
        "Using triangles.txt (right click and 'Save Link/Target As...'), a 27K text file containing the co-ordinates of one thousand \"random\" triangles, find the number of triangles for which the interior contains the origin.",
        "NOTE: The first two examples in the file represent the triangles in the example given above."
      ]
    },
    {
      "id": "5900f3d61000cf542c50fee7",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 103: Special subset sums: optimum",
      "tests": [
        "assert.strictEqual(euler103(), 20313839404245, 'message: <code>euler103()</code> should return 20313839404245.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler103() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler103();"
      ],
      "description": [
        "Let S(A) represent the sum of elements in set A of size n. We shall call it a special sum set if for any two non-empty disjoint subsets, B and C, the following properties are true:",
        "S(B) ≠ S(C); that is, sums of subsets cannot be equal.",
        "If B contains more elements than C then S(B) > S(C).",
        "If S(A) is minimised for a given n, we shall call it an optimum special sum set. The first five optimum special sum sets are given below.",
        "n = 1: {1}n = 2: {1, 2}n = 3: {2, 3, 4}n = 4: {3, 5, 6, 7}n = 5: {6, 9, 11, 12, 13}",
        "It seems that for a given optimum set, A = {a1, a2, ... , an}, the next optimum set is of the form B = {b, a1+b, a2+b, ... ,an+b}, where b is the \"middle\" element on the previous row.",
        "By applying this \"rule\" we would expect the optimum set for n = 6 to be A = {11, 17, 20, 22, 23, 24}, with S(A) = 117. However, this is not the optimum set, as we have merely applied an algorithm to provide a near optimum set. The optimum set for n = 6 is A = {11, 18, 19, 20, 22, 25}, with S(A) = 115 and corresponding set string: 111819202225.",
        "Given that A is an optimum special sum set for n = 7, find its set string.",
        "NOTE: This problem is related to Problem 105 and Problem 106."
      ]
    },
    {
      "id": "5900f3d51000cf542c50fee6",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 104: Pandigital Fibonacci ends",
      "tests": [
        "assert.strictEqual(euler104(), 329468, 'message: <code>euler104()</code> should return 329468.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler104() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler104();"
      ],
      "description": [
        "The Fibonacci sequence is defined by the recurrence relation:",
        "Fn = Fn−1 + Fn−2, where F1 = 1 and F2 = 1.",
        "It turns out that F541, which contains 113 digits, is the first Fibonacci number for which the last nine digits are 1-9 pandigital (contain all the digits 1 to 9, but not necessarily in order). And F2749, which contains 575 digits, is the first Fibonacci number for which the first nine digits are 1-9 pandigital.",
        "Given that Fk is the first Fibonacci number for which the first nine digits AND the last nine digits are 1-9 pandigital, find k."
      ]
    },
    {
      "id": "5900f3d61000cf542c50fee8",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 105: Special subset sums: testing",
      "tests": [
        "assert.strictEqual(euler105(), 73702, 'message: <code>euler105()</code> should return 73702.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler105() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler105();"
      ],
      "description": [
        "Let S(A) represent the sum of elements in set A of size n. We shall call it a special sum set if for any two non-empty disjoint subsets, B and C, the following properties are true:",
        "S(B) ≠ S(C); that is, sums of subsets cannot be equal.",
        "If B contains more elements than C then S(B) > S(C).",
        "For example, {81, 88, 75, 42, 87, 84, 86, 65} is not a special sum set because 65 + 87 + 88 = 75 + 81 + 84, whereas {157, 150, 164, 119, 79, 159, 161, 139, 158} satisfies both rules for all possible subset pair combinations and S(A) = 1286.",
        "Using sets.txt (right click and \"Save Link/Target As...\"), a 4K text file with one-hundred sets containing seven to twelve elements (the two examples given above are the first two sets in the file), identify all the special sum sets, A1, A2, ..., Ak, and find the value of S(A1) + S(A2) + ... + S(Ak).",
        "NOTE: This problem is related to Problem 103 and Problem 106."
      ]
    },
    {
      "id": "5900f3d71000cf542c50fee9",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 106: Special subset sums: meta-testing",
      "tests": [
        "assert.strictEqual(euler106(), 21384, 'message: <code>euler106()</code> should return 21384.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler106() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler106();"
      ],
      "description": [
        "Let S(A) represent the sum of elements in set A of size n. We shall call it a special sum set if for any two non-empty disjoint subsets, B and C, the following properties are true:",
        "S(B) ≠ S(C); that is, sums of subsets cannot be equal.",
        "If B contains more elements than C then S(B) > S(C).",
        "For this problem we shall assume that a given set contains n strictly increasing elements and it already satisfies the second rule.",
        "Surprisingly, out of the 25 possible subset pairs that can be obtained from a set for which n = 4, only 1 of these pairs need to be tested for equality (first rule). Similarly, when n = 7, only 70 out of the 966 subset pairs need to be tested.",
        "For n = 12, how many of the 261625 subset pairs that can be obtained need to be tested for equality?",
        "NOTE: This problem is related to Problem 103 and Problem 105."
      ]
    },
    {
      "id": "5900f3d91000cf542c50feea",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 107: Minimal network",
      "tests": [
        "assert.strictEqual(euler107(), 259679, 'message: <code>euler107()</code> should return 259679.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler107() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler107();"
      ],
      "description": [
        "The following undirected network consists of seven vertices and twelve edges with a total weight of 243.",
        "",
        "",
        "The same network can be represented by the matrix below.",
        "    ABCDEFG",
        "A-161221---",
        "B16--1720--",
        "C12--28-31-",
        "D211728-181923",
        "E-20-18--11",
        "F--3119--27",
        "G---231127-",
        "However, it is possible to optimise the network by removing some edges and still ensure that all points on the network remain connected. The network which achieves the maximum saving is shown below. It has a weight of 93, representing a saving of 243 − 93 = 150 from the original network.",
        "",
        "",
        "Using network.txt (right click and 'Save Link/Target As...'), a 6K text file containing a network with forty vertices, and given in matrix form, find the maximum saving which can be achieved by removing redundant edges whilst ensuring that the network remains connected."
      ]
    },
    {
      "id": "5900f3d91000cf542c50feeb",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 108: About Project Euler",
      "tests": [
        "assert.strictEqual(euler108(), 180180, 'message: <code>euler108()</code> should return 180180.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler108() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler108();"
      ],
      "description": [
        ""
      ]
    },
    {
      "id": "5900f3db1000cf542c50feec",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 109: Darts",
      "tests": [
        "assert.strictEqual(euler109(), 38182, 'message: <code>euler109()</code> should return 38182.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler109() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler109();"
      ],
      "description": [
        "In the game of darts a player throws three darts at a target board which is split into twenty equal sized sections numbered one to twenty.",
        "",
        "",
        "The score of a dart is determined by the number of the region that the dart lands in. A dart landing outside the red/green outer ring scores zero. The black and cream regions inside this ring represent single scores. However, the red/green outer ring and middle ring score double and treble scores respectively.",
        "At the centre of the board are two concentric circles called the bull region, or bulls-eye. The outer bull is worth 25 points and the inner bull is a double, worth 50 points.",
        "There are many variations of rules but in the most popular game the players will begin with a score 301 or 501 and the first player to reduce their running total to zero is a winner. However, it is normal to play a \"doubles out\" system, which means that the player must land a double (including the double bulls-eye at the centre of the board) on their final dart to win; any other dart that would reduce their running total to one or lower means the score for that set of three darts is \"bust\".",
        "When a player is able to finish  on their current score it is called a \"checkout\" and the highest checkout is 170: T20 T20 D25 (two treble 20s and double bull).",
        "There are exactly eleven distinct ways to checkout on a score of 6:",
        "",
        "D3",
        " ",
        " ",
        "D1",
        "D2",
        " ",
        "S2",
        "D2",
        " ",
        "D2",
        "D1",
        " ",
        "S4",
        "D1",
        " ",
        "S1",
        "S1",
        "D2",
        "S1",
        "T1",
        "D1",
        "S1",
        "S3",
        "D1",
        "D1",
        "D1",
        "D1",
        "D1",
        "S2",
        "D1",
        "S2",
        "S2",
        "D1",
        "",
        "Note that D1 D2 is considered different to D2 D1 as they finish on different doubles. However, the combination S1 T1 D1 is considered the same as T1 S1 D1.",
        "In addition we shall not include misses in considering combinations; for example, D3 is the same as 0 D3 and 0 0 D3.",
        "Incredibly there are 42336 distinct ways of checking out in total.",
        "How many distinct ways can a player checkout with a score less than 100?"
      ]
    },
    {
      "id": "5900f3db1000cf542c50feed",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 110: About Project Euler",
      "tests": [
        "assert.strictEqual(euler110(), 9350130049860600, 'message: <code>euler110()</code> should return 9350130049860600.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler110() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler110();"
      ],
      "description": [
        ""
      ]
    },
    {
      "id": "5900f3db1000cf542c50feee",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 111: Primes with runs",
      "tests": [
        "assert.strictEqual(euler111(), 612407567715, 'message: <code>euler111()</code> should return 612407567715.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler111() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler111();"
      ],
      "description": [
        "Considering 4-digit primes containing repeated digits it is clear that they cannot all be the same: 1111 is divisible by 11, 2222 is divisible by 22, and so on. But there are nine 4-digit primes containing three ones:",
        "1117, 1151, 1171, 1181, 1511, 1811, 2111, 4111, 8111",
        "We shall say that M(n, d) represents the maximum number of repeated digits for an n-digit prime where d is the repeated digit, N(n, d) represents the number of such primes, and S(n, d) represents the sum of these primes.",
        "So M(4, 1) = 3 is the maximum number of repeated digits for a 4-digit prime where one is the repeated digit, there are N(4, 1) = 9 such primes, and the sum of these primes is S(4, 1) = 22275. It turns out that for d = 0, it is only possible to have M(4, 0) = 2 repeated digits, but there are N(4, 0) = 13 such cases.",
        "In the same way we obtain the following results for 4-digit primes.",
        "",
        "Digit, d",
        "M(4, d)",
        "N(4, d)",
        "S(4, d)",
        "0",
        "2",
        "13",
        "67061",
        "1",
        "3",
        "9",
        "22275",
        "2",
        "3",
        "1",
        "2221",
        "3",
        "3",
        "12",
        "46214",
        "4",
        "3",
        "2",
        "8888",
        "5",
        "3",
        "1",
        "5557",
        "6",
        "3",
        "1",
        "6661",
        "7",
        "3",
        "9",
        "57863",
        "8",
        "3",
        "1",
        "8887",
        "9",
        "3",
        "7",
        "48073",
        "",
        "For d = 0 to 9, the sum of all S(4, d) is 273700.",
        "Find the sum of all S(10, d)."
      ]
    },
    {
      "id": "5900f3dd1000cf542c50feef",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 112: Bouncy numbers",
      "tests": [
        "assert.strictEqual(euler112(), 1587000, 'message: <code>euler112()</code> should return 1587000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler112() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler112();"
      ],
      "description": [
        "Working from left-to-right if no digit is exceeded by the digit to its left it is called an increasing number; for example, 134468.",
        "Similarly if no digit is exceeded by the digit to its right it is called a decreasing number; for example, 66420.",
        "We shall call a positive integer that is neither increasing nor decreasing a \"bouncy\" number; for example, 155349.",
        "Clearly there cannot be any bouncy numbers below one-hundred, but just over half of the numbers below one-thousand (525) are bouncy. In fact, the least number for which the proportion of bouncy numbers first reaches 50% is 538.",
        "Surprisingly, bouncy numbers become more and more common and by the time we reach 21780 the proportion of bouncy numbers is equal to 90%.",
        "Find the least number for which the proportion of bouncy numbers is exactly 99%."
      ]
    },
    {
      "id": "5900f3dd1000cf542c50fef0",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 113: Non-bouncy numbers",
      "tests": [
        "assert.strictEqual(euler113(), 51161058134250, 'message: <code>euler113()</code> should return 51161058134250.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler113() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler113();"
      ],
      "description": [
        "Working from left-to-right if no digit is exceeded by the digit to its left it is called an increasing number; for example, 134468.",
        "Similarly if no digit is exceeded by the digit to its right it is called a decreasing number; for example, 66420.",
        "We shall call a positive integer that is neither increasing nor decreasing a \"bouncy\" number; for example, 155349.",
        "As n increases, the proportion of bouncy numbers below n increases such that there are only 12951 numbers below one-million that are not bouncy and only 277032 non-bouncy numbers below 1010.",
        "How many numbers below a googol (10100) are not bouncy?"
      ]
    },
    {
      "id": "5900f3e01000cf542c50fef2",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 114: Counting block combinations I",
      "tests": [
        "assert.strictEqual(euler114(), 16475640049, 'message: <code>euler114()</code> should return 16475640049.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler114() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler114();"
      ],
      "description": [
        "A row measuring seven units in length has red blocks with a minimum length of three units placed on it, such that any two red blocks (which are allowed to be different lengths) are separated by at least one black square. There are exactly seventeen ways of doing this.",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        " ",
        "How many ways can a row measuring fifty units in length be filled?",
        "NOTE: Although the example above does not lend itself to the possibility, in general it is permitted to mix block sizes. For example, on a row measuring eight units in length you could use red (3), black (1), and red (4)."
      ]
    },
    {
      "id": "5900f3df1000cf542c50fef1",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 115: Counting block combinations II",
      "tests": [
        "assert.strictEqual(euler115(), 168, 'message: <code>euler115()</code> should return 168.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler115() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler115();"
      ],
      "description": [
        "NOTE: This is a more difficult version of Problem 114.",
        "A row measuring n units in length has red blocks with a minimum length of m units placed on it, such that any two red blocks (which are allowed to be different lengths) are separated by at least one black square.",
        "Let the fill-count function, F(m, n), represent the number of ways that a row can be filled.",
        "For example, F(3, 29) = 673135 and F(3, 30) = 1089155.",
        "That is, for m = 3, it can be seen that n = 30 is the smallest value for which the fill-count function first exceeds one million.",
        "In the same way, for m = 10, it can be verified that F(10, 56) = 880711 and F(10, 57) = 1148904, so n = 57 is the least value for which the fill-count function first exceeds one million.",
        "For m = 50, find the least value of n for which the fill-count function first exceeds one million."
      ]
    },
    {
      "id": "5900f3e01000cf542c50fef3",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 116: Red, green or blue tiles",
      "tests": [
        "assert.strictEqual(euler116(), 20492570929, 'message: <code>euler116()</code> should return 20492570929.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler116() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler116();"
      ],
      "description": [
        "A row of five black square tiles is to have a number of its tiles replaced with coloured oblong tiles chosen from red (length two), green (length three), or blue (length four).",
        "If red tiles are chosen there are exactly seven ways this can be done.",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        " ",
        "If green tiles are chosen there are three ways.",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        " ",
        "And if blue tiles are chosen there are two ways.",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "Assuming that colours cannot be mixed there are 7 + 3 + 2 = 12 ways of replacing the black tiles in a row measuring five units in length.",
        "How many different ways can the black tiles in a row measuring fifty units in length be replaced if colours cannot be mixed and at least one coloured tile must be used?",
        "NOTE: This is related to Problem 117."
      ]
    },
    {
      "id": "5900f3e21000cf542c50fef4",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 117: Red, green, and blue tiles",
      "tests": [
        "assert.strictEqual(euler117(), 100808458960497, 'message: <code>euler117()</code> should return 100808458960497.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler117() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler117();"
      ],
      "description": [
        "Using a combination of black square tiles and oblong tiles chosen from: red tiles measuring two units, green tiles measuring three units, and blue tiles measuring four units, it is possible to tile a row measuring five units in length in exactly fifteen different ways.",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        "",
        " ",
        "How many ways can a row measuring fifty units in length be tiled?",
        "NOTE: This is related to Problem 116."
      ]
    },
    {
      "id": "5900f3e21000cf542c50fef5",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 118: Pandigital prime sets",
      "tests": [
        "assert.strictEqual(euler118(), 44680, 'message: <code>euler118()</code> should return 44680.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler118() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler118();"
      ],
      "description": [
        "Using all of the digits 1 through 9 and concatenating them freely to form decimal integers, different sets can be formed. Interestingly with the set {2,5,47,89,631}, all of the elements belonging to it are prime.",
        "How many distinct sets containing each of the digits one through nine exactly once contain only prime elements?"
      ]
    },
    {
      "id": "5900f3e41000cf542c50fef6",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 119: Digit power sum",
      "tests": [
        "assert.strictEqual(euler119(), 248155780267521, 'message: <code>euler119()</code> should return 248155780267521.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler119() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler119();"
      ],
      "description": [
        "The number 512 is interesting because it is equal to the sum of its digits raised to some power: 5 + 1 + 2 = 8, and 83 = 512. Another example of a number with this property is 614656 = 284.",
        "We shall define an to be the nth term of this sequence and insist that a number must contain at least two digits to have a sum.",
        "You are given that a2 = 512 and a10 = 614656.",
        "Find a30."
      ]
    },
    {
      "id": "5900f3e41000cf542c50fef7",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 120: Square remainders",
      "tests": [
        "assert.strictEqual(euler120(), 333082500, 'message: <code>euler120()</code> should return 333082500.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler120() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler120();"
      ],
      "description": [
        "Let r be the remainder when (a−1)n + (a+1)n is divided by a2.",
        "For example, if a = 7 and n = 3, then r = 42: 63 + 83 = 728 ≡ 42 mod 49. And as n varies, so too will r, but for a = 7 it turns out that rmax = 42.",
        "For 3 ≤ a ≤ 1000, find ∑ rmax."
      ]
    },
    {
      "id": "5900f3e51000cf542c50fef8",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 121: Disc game prize fund",
      "tests": [
        "assert.strictEqual(euler121(), 2269, 'message: <code>euler121()</code> should return 2269.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler121() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler121();"
      ],
      "description": [
        "A bag contains one red disc and one blue disc. In a game of chance a player takes a disc at random and its colour is noted. After each turn the disc is returned to the bag, an extra red disc is added, and another disc is taken at random.",
        "The player pays £1 to play and wins if they have taken more blue discs than red discs at the end of the game.",
        "If the game is played for four turns, the probability of a player winning is exactly 11/120, and so the maximum prize fund the banker should allocate for winning in this game would be £10 before they would expect to incur a loss. Note that any payout will be a whole number of pounds and also includes the original £1 paid to play the game, so in the example given the player actually wins £9.",
        "Find the maximum prize fund that should be allocated to a single game in which fifteen turns are played."
      ]
    },
    {
      "id": "5900f3e61000cf542c50fef9",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 122: Efficient exponentiation",
      "tests": [
        "assert.strictEqual(euler122(), 1582, 'message: <code>euler122()</code> should return 1582.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler122() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler122();"
      ],
      "description": [
        "The most naive way of computing n15 requires fourteen multiplications:",
        "n × n × ... × n = n15",
        "But using a \"binary\" method you can compute it in six multiplications:",
        "n × n = n2n2 × n2 = n4n4 × n4 = n8n8 × n4 = n12n12 × n2 = n14n14 × n = n15",
        "However it is yet possible to compute it in only five multiplications:",
        "n × n = n2n2 × n = n3n3 × n3 = n6n6 × n6 = n12n12 × n3 = n15",
        "We shall define m(k) to be the minimum number of multiplications to compute nk; for example m(15) = 5.",
        "For 1 ≤ k ≤ 200, find ∑ m(k)."
      ]
    },
    {
      "id": "5900f3e71000cf542c50fefa",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 123: Prime square remainders",
      "tests": [
        "assert.strictEqual(euler123(), 21035, 'message: <code>euler123()</code> should return 21035.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler123() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler123();"
      ],
      "description": [
        "Let pn be the nth prime: 2, 3, 5, 7, 11, ..., and let r be the remainder when (pn−1)n + (pn+1)n is divided by pn2.",
        "For example, when n = 3, p3 = 5, and 43 + 63 = 280 ≡ 5 mod 25.",
        "The least value of n for which the remainder first exceeds 109 is 7037.",
        "Find the least value of n for which the remainder first exceeds 1010."
      ]
    },
    {
      "id": "5900f3e81000cf542c50fefb",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 124: Ordered radicals",
      "tests": [
        "assert.strictEqual(euler124(), 21417, 'message: <code>euler124()</code> should return 21417.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler124() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler124();"
      ],
      "description": [
        "The radical of n, rad(n), is the product of the distinct prime factors of n. For example, 504 = 23 × 32 × 7, so rad(504) = 2 × 3 × 7 = 42.",
        "If we calculate rad(n) for 1 ≤ n ≤ 10, then sort them on rad(n), and sorting on n if the radical values are equal, we get:",
        "Unsorted",
        " ",
        "Sorted",
        "n",
        "rad(n)",
        "",
        "n",
        "rad(n)",
        "k",
        "11",
        " ",
        "111",
        "22",
        " ",
        "222",
        "33",
        " ",
        "423",
        "42",
        " ",
        "824",
        "55",
        " ",
        "335",
        "66",
        " ",
        "936",
        "77",
        " ",
        "557",
        "82",
        " ",
        "668",
        "93",
        " ",
        "779",
        "1010",
        " ",
        "101010",
        "Let E(k) be the kth element in the sorted n column; for example, E(4) = 8 and E(6) = 9.",
        "If rad(n) is sorted for 1 ≤ n ≤ 100000, find E(10000)."
      ]
    },
    {
      "id": "5900f3e91000cf542c50fefc",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 125: Palindromic sums",
      "tests": [
        "assert.strictEqual(euler125(), 2906969179, 'message: <code>euler125()</code> should return 2906969179.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler125() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler125();"
      ],
      "description": [
        "The palindromic number 595 is interesting because it can be written as the sum of consecutive squares: 62 + 72 + 82 + 92 + 102 + 112 + 122.",
        "There are exactly eleven palindromes below one-thousand that can be written as consecutive square sums, and the sum of these palindromes is 4164. Note that 1 = 02 + 12 has not been included as this problem is concerned with the squares of positive integers.",
        "Find the sum of all the numbers less than 108 that are both palindromic and can be written as the sum of consecutive squares."
      ]
    },
    {
      "id": "5900f3ea1000cf542c50fefd",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 126: Cuboid layers",
      "tests": [
        "assert.strictEqual(euler126(), 18522, 'message: <code>euler126()</code> should return 18522.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler126() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler126();"
      ],
      "description": [
        "The minimum number of cubes to cover every visible face on a cuboid measuring 3 x 2 x 1 is twenty-two.",
        "",
        "",
        "If we then add a second layer to this solid it would require forty-six cubes to cover every visible face, the third layer would require seventy-eight cubes, and the fourth layer would require one-hundred and eighteen cubes to cover every visible face.",
        "However, the first layer on a cuboid measuring 5 x 1 x 1 also requires twenty-two cubes; similarly the first layer on cuboids measuring 5 x 3 x 1, 7 x 2 x 1, and 11 x 1 x 1 all contain forty-six cubes.",
        "We shall define C(n) to represent the number of cuboids that contain n cubes in one of its layers. So C(22) = 2, C(46) = 4, C(78) = 5, and C(118) = 8.",
        "It turns out that 154 is the least value of n for which C(n) = 10.",
        "Find the least value of n for which C(n) = 1000."
      ]
    },
    {
      "id": "5900f3ec1000cf542c50fefe",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 127: abc-hits",
      "tests": [
        "assert.strictEqual(euler127(), 18407904, 'message: <code>euler127()</code> should return 18407904.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler127() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler127();"
      ],
      "description": [
        "The radical of n, rad(n), is the product of distinct prime factors of n. For example, 504 = 23 × 32 × 7, so rad(504) = 2 × 3 × 7 = 42.",
        "We shall define the triplet of positive integers (a, b, c) to be an abc-hit if:",
        "GCD(a, b) = GCD(a, c) = GCD(b, c) = 1",
        "a < b",
        "a + b = c",
        "rad(abc) < c",
        "For example, (5, 27, 32) is an abc-hit, because:",
        "GCD(5, 27) = GCD(5, 32) = GCD(27, 32) = 1",
        "5 < 27",
        "5 + 27 = 32",
        "rad(4320) = 30 < 32",
        "It turns out that abc-hits are quite rare and there are only thirty-one abc-hits for c < 1000, with ∑c = 12523.",
        "Find ∑c for c < 120000."
      ]
    },
    {
      "id": "5900f3ec1000cf542c50feff",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 128: Hexagonal tile differences",
      "tests": [
        "assert.strictEqual(euler128(), 14516824220, 'message: <code>euler128()</code> should return 14516824220.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler128() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler128();"
      ],
      "description": [
        "A hexagonal tile with number 1 is surrounded by a ring of six hexagonal tiles, starting at \"12 o'clock\" and numbering the tiles 2 to 7 in an anti-clockwise direction.",
        "New rings are added in the same fashion, with the next rings being numbered 8 to 19, 20 to 37, 38 to 61, and so on. The diagram below shows the first three rings.",
        "",
        "",
        "By finding the difference between tile n and each of its six neighbours we shall define PD(n) to be the number of those differences which are prime.",
        "For example, working clockwise around tile 8 the differences are 12, 29, 11, 6, 1, and 13. So PD(8) = 3.",
        "In the same way, the differences around tile 17 are 1, 17, 16, 1, 11, and 10, hence PD(17) = 2.",
        "It can be shown that the maximum value of PD(n) is 3.",
        "If all of the tiles for which PD(n) = 3 are listed in ascending order to form a sequence, the 10th tile would be 271.",
        "Find the 2000th tile in this sequence."
      ]
    },
    {
      "id": "5900f3ef1000cf542c50ff01",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 129: Repunit divisibility",
      "tests": [
        "assert.strictEqual(euler129(), 1000023, 'message: <code>euler129()</code> should return 1000023.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler129() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler129();"
      ],
      "description": [
        "A number consisting entirely of ones is called a repunit. We shall define R(k) to be a repunit of length k; for example, R(6) = 111111.",
        "Given that n is a positive integer and GCD(n, 10) = 1, it can be shown that there always exists a value, k, for which R(k) is divisible by n, and let A(n) be the least such value of k; for example, A(7) = 6 and A(41) = 5.",
        "The least value of n for which A(n) first exceeds ten is 17.",
        "Find the least value of n for which A(n) first exceeds one-million."
      ]
    },
    {
      "id": "5900f3ee1000cf542c50ff00",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 130: Composites with prime repunit property",
      "tests": [
        "assert.strictEqual(euler130(), 149253, 'message: <code>euler130()</code> should return 149253.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler130() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler130();"
      ],
      "description": [
        "A number consisting entirely of ones is called a repunit. We shall define R(k) to be a repunit of length k; for example, R(6) = 111111.",
        "Given that n is a positive integer and GCD(n, 10) = 1, it can be shown that there always exists a value, k, for which R(k) is divisible by n, and let A(n) be the least such value of k; for example, A(7) = 6 and A(41) = 5.",
        "You are given that for all primes, p > 5, that p − 1 is divisible by A(p). For example, when p = 41, A(41) = 5, and 40 is divisible by 5.",
        "However, there are rare composite values for which this is also true; the first five examples being 91, 259, 451, 481, and 703.",
        "Find the sum of the first twenty-five composite values of n for whichGCD(n, 10) = 1 and n − 1 is divisible by A(n)."
      ]
    },
    {
      "id": "5900f3ef1000cf542c50ff02",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 131: Prime cube partnership",
      "tests": [
        "assert.strictEqual(euler131(), 173, 'message: <code>euler131()</code> should return 173.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler131() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler131();"
      ],
      "description": [
        "There are some prime values, p, for which there exists a positive integer, n, such that the expression n3 + n2p is a perfect cube.",
        "For example, when p = 19, 83 + 82×19 = 123.",
        "What is perhaps most surprising is that for each prime with this property the value of n is unique, and there are only four such primes below one-hundred.",
        "How many primes below one million have this remarkable property?"
      ]
    },
    {
      "id": "5900f3f11000cf542c50ff03",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 132: Large repunit factors",
      "tests": [
        "assert.strictEqual(euler132(), 843296, 'message: <code>euler132()</code> should return 843296.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler132() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler132();"
      ],
      "description": [
        "A number consisting entirely of ones is called a repunit. We shall define R(k) to be a repunit of length k.",
        "For example, R(10) = 1111111111 = 11×41×271×9091, and the sum of these prime factors is 9414.",
        "Find the sum of the first forty prime factors of R(109)."
      ]
    },
    {
      "id": "5900f3f21000cf542c50ff04",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 133: Repunit nonfactors",
      "tests": [
        "assert.strictEqual(euler133(), 453647705, 'message: <code>euler133()</code> should return 453647705.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler133() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler133();"
      ],
      "description": [
        "A number consisting entirely of ones is called a repunit. We shall define R(k) to be a repunit of length k; for example, R(6) = 111111.",
        "Let us consider repunits of the form R(10n).",
        "Although R(10), R(100), or R(1000) are not divisible by 17, R(10000) is divisible by 17. Yet there is no value of n for which R(10n) will divide by 19. In fact, it is remarkable that 11, 17, 41, and 73 are the only four primes below one-hundred that can  be a factor of R(10n).",
        "Find the sum of all the primes below one-hundred thousand that will never be a factor of R(10n)."
      ]
    },
    {
      "id": "5900f3f21000cf542c50ff05",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 134: Prime pair connection",
      "tests": [
        "assert.strictEqual(euler134(), 18613426663617120, 'message: <code>euler134()</code> should return 18613426663617120.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler134() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler134();"
      ],
      "description": [
        "Consider the consecutive primes p1 = 19 and p2 = 23. It can be verified that 1219 is the smallest number such that the last digits are formed by p1 whilst also being divisible by p2.",
        "In fact, with the exception of p1 = 3 and p2 = 5, for every pair of consecutive primes, p2 > p1, there exist values of n for which the last digits are formed by p1 and n is divisible by p2. Let S be the smallest of these values of n.",
        "Find ∑ S for every pair of consecutive primes with 5 ≤ p1 ≤ 1000000."
      ]
    },
    {
      "id": "5900f3f31000cf542c50ff06",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 135: Same differences",
      "tests": [
        "assert.strictEqual(euler135(), 4989, 'message: <code>euler135()</code> should return 4989.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler135() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler135();"
      ],
      "description": [
        "Given the positive integers, x, y, and z, are consecutive terms of an arithmetic progression, the least value of the positive integer, n, for which the equation, x2 − y2 − z2 = n, has exactly two solutions is n = 27:",
        "342 − 272 − 202 = 122 − 92 − 62 = 27",
        "It turns out that n = 1155 is the least value which has exactly ten solutions.",
        "How many values of n less than one million have exactly ten distinct solutions?"
      ]
    },
    {
      "id": "5900f3f51000cf542c50ff07",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 136: Singleton difference",
      "tests": [
        "assert.strictEqual(euler136(), 2544559, 'message: <code>euler136()</code> should return 2544559.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler136() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler136();"
      ],
      "description": [
        "The positive integers, x, y, and z, are consecutive terms of an arithmetic progression. Given that n is a positive integer, the equation, x2 − y2 − z2 = n, has exactly one solution when n = 20:",
        "132 − 102 − 72 = 20",
        "In fact there are twenty-five values of n below one hundred for which the equation has a unique solution.",
        "How many values of n less than fifty million have exactly one solution?"
      ]
    },
    {
      "id": "5900f3f51000cf542c50ff08",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 137: Fibonacci golden nuggets",
      "tests": [
        "assert.strictEqual(euler137(), 1120149658760, 'message: <code>euler137()</code> should return 1120149658760.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler137() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler137();"
      ],
      "description": [
        "Consider the infinite polynomial series AF(x) = xF1 + x2F2 + x3F3 + ..., where Fk is the kth term in the Fibonacci sequence: 1, 1, 2, 3, 5, 8, ... ; that is, Fk = Fk−1 + Fk−2, F1 = 1 and F2 = 1.",
        "For this problem we shall be interested in values of x for which AF(x) is a positive integer.",
        "Surprisingly AF(1/2)",
        " = ",
        "(1/2).1 + (1/2)2.1 + (1/2)3.2 + (1/2)4.3 + (1/2)5.5 + ...",
        " ",
        " = ",
        "1/2 + 1/4 + 2/8 + 3/16 + 5/32 + ...",
        " ",
        " = ",
        "2",
        "The corresponding values of x for the first five natural numbers are shown below.",
        "",
        "xAF(x)",
        "√2−11",
        "1/22",
        "(√13−2)/33",
        "(√89−5)/84",
        "(√34−3)/55",
        "",
        "We shall call AF(x) a golden nugget if x is rational, because they become increasingly rarer; for example, the 10th golden nugget is 74049690.",
        "Find the 15th golden nugget."
      ]
    },
    {
      "id": "5900f3f61000cf542c50ff09",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 138: Special isosceles triangles",
      "tests": [
        "assert.strictEqual(euler138(), 1118049290473932, 'message: <code>euler138()</code> should return 1118049290473932.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler138() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler138();"
      ],
      "description": [
        "Consider the isosceles triangle with base length, b = 16, and legs, L = 17.",
        "",
        "",
        "By using the Pythagorean theorem it can be seen that the height of the triangle, h = √(172 − 82) = 15, which is one less than the base length.",
        "With b = 272 and L = 305, we get h = 273, which is one more than the base length, and this is the second smallest isosceles triangle with the property that h = b ± 1.",
        "Find ∑ L for the twelve smallest isosceles triangles for which h = b ± 1 and b, L are positive integers."
      ]
    },
    {
      "id": "5900f3f71000cf542c50ff0a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 139: Pythagorean tiles",
      "tests": [
        "assert.strictEqual(euler139(), 10057761, 'message: <code>euler139()</code> should return 10057761.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler139() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler139();"
      ],
      "description": [
        "Let (a, b, c) represent the three sides of a right angle triangle with integral length sides. It is possible to place four such triangles together to form a square with length c.",
        "For example, (3, 4, 5) triangles can be placed together to form a 5 by 5 square with a 1 by 1 hole in the middle and it can be seen that the 5 by 5 square can be tiled with twenty-five 1 by 1 squares.",
        "",
        "",
        "However, if (5, 12, 13) triangles were used then the hole would measure 7 by 7 and these could not be used to tile the 13 by 13 square.",
        "Given that the perimeter of the right triangle is less than one-hundred million, how many Pythagorean triangles would allow such a tiling to take place?"
      ]
    },
    {
      "id": "5900f3fa1000cf542c50ff0c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 140: Modified Fibonacci golden nuggets",
      "tests": [
        "assert.strictEqual(euler140(), 5673835352990, 'message: <code>euler140()</code> should return 5673835352990.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler140() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler140();"
      ],
      "description": [
        "Consider the infinite polynomial series AG(x) = xG1 + x2G2 + x3G3 + ..., where Gk is the kth term of the second order recurrence relation Gk = Gk−1 + Gk−2, G1 = 1 and G2 = 4; that is, 1, 4, 5, 9, 14, 23, ... .",
        "For this problem we shall be concerned with values of x for which AG(x) is a positive integer.",
        "The corresponding values of x for the first five natural numbers are shown below.",
        "",
        "xAG(x)",
        "(√5−1)/41",
        "2/52",
        "(√22−2)/63",
        "(√137−5)/144",
        "1/25",
        "",
        "We shall call AG(x) a golden nugget if x is rational, because they become increasingly rarer; for example, the 20th golden nugget is 211345365.",
        "Find the sum of the first thirty golden nuggets."
      ]
    },
    {
      "id": "5900f3f91000cf542c50ff0b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 141: Investigating progressive numbers, n, which are also square",
      "tests": [
        "assert.strictEqual(euler141(), 878454337159, 'message: <code>euler141()</code> should return 878454337159.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler141() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler141();"
      ],
      "description": [
        "A positive integer, n, is divided by d and the quotient and remainder are q and r respectively. In addition d, q, and r are consecutive positive integer terms in a geometric sequence, but not necessarily in that order.",
        "For example, 58 divided by 6 has quotient 9 and remainder 4. It can also be seen that 4, 6, 9 are consecutive terms in a geometric sequence (common ratio 3/2).",
        "We will call such numbers, n, progressive.",
        "Some progressive numbers, such as 9 and 10404 = 1022, happen to also be perfect squares. The sum of all progressive perfect squares below one hundred thousand is 124657.",
        "Find the sum of all progressive perfect squares below one trillion (1012)."
      ]
    },
    {
      "id": "5900f3fa1000cf542c50ff0d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 142: Perfect Square Collection",
      "tests": [
        "assert.strictEqual(euler142(), 1006193, 'message: <code>euler142()</code> should return 1006193.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler142() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler142();"
      ],
      "description": [
        "Find the smallest x + y + z with integers x > y > z > 0 such that x + y, x − y, x + z, x − z, y + z, y − z are all perfect squares."
      ]
    },
    {
      "id": "5900f3fc1000cf542c50ff0e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 143: Investigating the Torricelli point of a triangle",
      "tests": [
        "assert.strictEqual(euler143(), 30758397, 'message: <code>euler143()</code> should return 30758397.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler143() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler143();"
      ],
      "description": [
        "Let ABC be a triangle with all interior angles being less than 120 degrees. Let X be any point inside the triangle and let XA = p, XC = q, and XB = r.",
        "Fermat challenged Torricelli to find the position of X such that p + q + r was minimised.",
        "Torricelli was able to prove that if equilateral triangles AOB, BNC and AMC are constructed on each side of triangle ABC, the circumscribed circles of AOB, BNC, and AMC will intersect at a single point, T, inside the triangle. Moreover he proved that T, called the Torricelli/Fermat point, minimises p + q + r. Even more remarkable, it can be shown that when the sum is minimised, AN = BM = CO = p + q + r and that AN, BM and CO also intersect at T.",
        "",
        "If the sum is minimised and a, b, c, p, q and r are all positive integers we shall call triangle ABC a Torricelli triangle. For example, a = 399, b = 455, c = 511 is an example of a Torricelli triangle, with p + q + r = 784.",
        "Find the sum of all distinct values of p + q + r ≤ 120000 for Torricelli triangles."
      ]
    },
    {
      "id": "5900f3fc1000cf542c50ff0f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 144: Investigating multiple reflections of a laser beam",
      "tests": [
        "assert.strictEqual(euler144(), 354, 'message: <code>euler144()</code> should return 354.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler144() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler144();"
      ],
      "description": [
        "In laser physics, a \"white cell\" is a mirror system that acts as a delay line for the laser beam. The beam enters the cell, bounces around on the mirrors, and eventually works its way back out.",
        "The specific white cell we will be considering is an ellipse with the equation 4x2 + y2 = 100",
        "The section corresponding to −0.01 ≤ x ≤ +0.01 at the top is missing, allowing the light to enter and exit through the hole.",
        "",
        "The light beam in this problem starts at the point (0.0,10.1) just outside the white cell, and the beam first impacts the mirror at (1.4,-9.6).",
        "Each time the laser beam hits the surface of the ellipse, it follows the usual law of reflection \"angle of incidence equals angle of reflection.\" That is, both the incident and reflected beams make the same angle with the normal line at the point of incidence.",
        "In the figure on the left, the red line shows the first two points of contact between the laser beam and the wall of the white cell; the blue line shows the line tangent to the ellipse at the point of incidence of the first bounce.The slope m of the tangent line at any point (x,y) of the given ellipse is: m = −4x/yThe normal line is perpendicular to this tangent line at the point of incidence.",
        "The animation on the right shows the first 10 reflections of the beam.",
        "",
        "How many times does the beam hit the internal surface of the white cell before exiting?"
      ]
    },
    {
      "id": "5900f3fd1000cf542c50ff10",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 145: How many reversible numbers are there below one-billion?",
      "tests": [
        "assert.strictEqual(euler145(), 608720, 'message: <code>euler145()</code> should return 608720.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler145() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler145();"
      ],
      "description": [
        "Some positive integers n have the property that the sum [ n + reverse(n) ] consists entirely of odd (decimal) digits. For instance, 36 + 63 = 99 and 409 + 904 = 1313. We will call such numbers reversible; so 36, 63, 409, and 904 are reversible. Leading zeroes are not allowed in either n or reverse(n).",
        "",
        "There are 120 reversible numbers below one-thousand.",
        "",
        "How many reversible numbers are there below one-billion (109)?"
      ]
    },
    {
      "id": "5900f3fe1000cf542c50ff11",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 146: Investigating a Prime Pattern",
      "tests": [
        "assert.strictEqual(euler146(), 676333270, 'message: <code>euler146()</code> should return 676333270.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler146() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler146();"
      ],
      "description": [
        "The smallest positive integer n for which the numbers n2+1, n2+3, n2+7, n2+9, n2+13, and n2+27 are consecutive primes is 10. The sum of all such integers n below one-million is 1242490.",
        "",
        "What is the sum of all such integers n below 150 million?"
      ]
    },
    {
      "id": "5900f3ff1000cf542c50ff12",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 147: Rectangles in cross-hatched grids",
      "tests": [
        "assert.strictEqual(euler147(), 846910284, 'message: <code>euler147()</code> should return 846910284.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler147() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler147();"
      ],
      "description": [
        "In a 3x2 cross-hatched grid, a total of 37 different rectangles could be situated within that grid as indicated in the sketch.",
        "",
        "There are 5 grids smaller than 3x2, vertical and horizontal dimensions being important, i.e. 1x1, 2x1, 3x1, 1x2 and 2x2. If each of them is cross-hatched, the following number of different rectangles could be situated within those smaller grids:",
        "1x1: 1",
        "2x1: 4",
        "3x1: 8",
        "1x2: 4",
        "2x2: 18",
        "",
        "Adding those to the 37 of the 3x2 grid, a total of 72 different rectangles could be situated within 3x2 and smaller grids.",
        "",
        "How many different rectangles could be situated within 47x43 and smaller grids?"
      ]
    },
    {
      "id": "5900f4021000cf542c50ff14",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 148: Exploring Pascal's triangle",
      "tests": [
        "assert.strictEqual(euler148(), 2129970655314432, 'message: <code>euler148()</code> should return 2129970655314432.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler148() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler148();"
      ],
      "description": [
        "We can easily verify that none of the entries in the first seven rows of Pascal's triangle are divisible by 7:",
        " ",
        " ",
        " ",
        " ",
        " ",
        " ",
        " 1",
        " ",
        " ",
        " ",
        " ",
        " ",
        " 1",
        " ",
        " 1",
        " ",
        " ",
        " ",
        " ",
        " 1",
        " ",
        " 2",
        " ",
        " 1",
        " ",
        " ",
        " ",
        " 1",
        " ",
        " 3",
        " ",
        " 3",
        " ",
        " 1",
        " ",
        " ",
        " 1",
        " ",
        " 4",
        " ",
        " 6",
        " ",
        " 4",
        " ",
        " 1",
        " ",
        " 1",
        " ",
        " 5",
        " ",
        "10",
        " ",
        "10",
        " ",
        " 5",
        " ",
        " 1",
        "1",
        " ",
        " 6",
        " ",
        "15",
        " ",
        "20",
        " ",
        "15",
        " ",
        " 6",
        " ",
        " 1",
        "However, if we check the first one hundred rows, we will find that only 2361 of the 5050 entries are not divisible by 7.",
        "",
        "Find the number of entries which are not divisible by 7 in the first one billion (109) rows of Pascal's triangle."
      ]
    },
    {
      "id": "5900f4021000cf542c50ff13",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 149: Searching for a maximum-sum subsequence",
      "tests": [
        "assert.strictEqual(euler149(), 52852124, 'message: <code>euler149()</code> should return 52852124.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler149() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler149();"
      ],
      "description": [
        "Looking at the table below, it is easy to verify that the maximum possible sum of adjacent numbers in any direction (horizontal, vertical, diagonal or anti-diagonal) is 16 (= 8 + 7 + 1).",
        "",
        "",
        "−25329−6513273−18−4  8",
        "",
        "Now, let us repeat the search, but on a much larger scale:",
        "",
        "First, generate four million pseudo-random numbers using a specific form of what is known as a \"Lagged Fibonacci Generator\":",
        "",
        "For 1 ≤ k ≤ 55, sk = [100003 − 200003k + 300007k3] (modulo 1000000) − 500000.",
        "For 56 ≤ k ≤ 4000000, sk = [sk−24 + sk−55 + 1000000] (modulo 1000000) − 500000.",
        "",
        "Thus, s10 = −393027 and s100 = 86613.",
        "",
        "The terms of s are then arranged in a 2000×2000 table, using the first 2000 numbers to fill the first row (sequentially), the next 2000 numbers to fill the second row, and so on.",
        "",
        "Finally, find the greatest sum of (any number of) adjacent entries in any direction (horizontal, vertical, diagonal or anti-diagonal)."
      ]
    },
    {
      "id": "5900f4031000cf542c50ff15",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 150: Searching a triangular array for a sub-triangle having minimum-sum",
      "tests": [
        "assert.strictEqual(euler150(), -271248680, 'message: <code>euler150()</code> should return -271248680.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler150() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler150();"
      ],
      "description": [
        "In a triangular array of positive and negative integers, we wish to find a sub-triangle such that the sum of the numbers it contains is the smallest possible.",
        "In the example below, it can be easily verified that the marked triangle satisfies this condition having a sum of −42.",
        "",
        "",
        "We wish to make such a triangular array with one thousand rows, so we generate 500500 pseudo-random numbers sk in the range ±219, using a type of random number generator (known as a Linear Congruential Generator) as follows:",
        "t := 0",
        "",
        "for k = 1 up to k = 500500:",
        "",
        "    t := (615949*t + 797807) modulo 220",
        "    sk := t−219",
        "Thus: s1 = 273519, s2 = −153582, s3 = 450905 etc",
        "Our triangular array is then formed using the pseudo-random numbers thus:",
        "",
        "s1",
        "s2  s3",
        "s4  s5  s6  ",
        "",
        "s7  s8  s9  s10",
        "...",
        "",
        "Sub-triangles can start at any element of the array and extend down as far as we like (taking-in the two elements directly below it from the next row, the three elements directly below from the row after that, and so on).",
        "",
        "The \"sum of a sub-triangle\" is defined as the sum of all the elements it contains.",
        "",
        "Find the smallest possible sub-triangle sum."
      ]
    },
    {
      "id": "5900f4031000cf542c50ff16",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 151: Paper sheets of standard sizes: an expected-value problem",
      "tests": [
        "assert.strictEqual(euler151(), 0.464399, 'message: <code>euler151()</code> should return 0.464399.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler151() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler151();"
      ],
      "description": [
        "A printing shop runs 16 batches (jobs) every week and each batch requires a sheet of special colour-proofing paper of size A5.",
        "Every Monday morning, the foreman opens a new envelope, containing a large sheet of the special paper with size A1.",
        "He proceeds to cut it in half, thus getting two sheets of size A2. Then he cuts one of them in half to get two sheets of size A3 and so on until he obtains the A5-size sheet needed for the first batch of the week.",
        "All the unused sheets are placed back in the envelope.",
        "",
        "At the beginning of each subsequent batch, he takes from the envelope one sheet of paper at random. If it is of size A5, he uses it. If it is larger, he repeats the 'cut-in-half' procedure until he has what he needs and any remaining sheets are always placed back in the envelope.",
        "Excluding the first and last batch of the week, find the expected number of times (during each week) that the foreman finds a single sheet of paper in the envelope.",
        "Give your answer rounded to six decimal places using the format x.xxxxxx ."
      ]
    },
    {
      "id": "5900f4041000cf542c50ff17",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 152: Writing 1/2 as a sum of inverse squares",
      "tests": [
        "assert.strictEqual(euler152(), 301, 'message: <code>euler152()</code> should return 301.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler152() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler152();"
      ],
      "description": [
        "There are several ways to write the number 1/2 as a sum of inverse squares using distinct integers.",
        "For instance, the numbers {2,3,4,5,7,12,15,20,28,35} can be used:",
        "",
        "In fact, only using integers between 2 and 45 inclusive, there are exactly three ways to do it, the remaining two being: {2,3,4,6,7,9,10,20,28,35,36,45} and {2,3,4,6,7,9,12,15,28,30,35,36,45}.",
        "How many ways are there to write the number 1/2 as a sum of inverse squares using distinct integers between 2 and 80 inclusive?"
      ]
    },
    {
      "id": "5900f4051000cf542c50ff18",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 153: Investigating Gaussian Integers",
      "tests": [
        "assert.strictEqual(euler153(), 17971254122360636, 'message: <code>euler153()</code> should return 17971254122360636.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler153() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler153();"
      ],
      "description": [
        "As we all know the equation x2=-1 has no solutions for real x.",
        "",
        "If we however introduce the imaginary number i this equation has two solutions: x=i and x=-i.",
        "",
        "If we go a step further the equation (x-3)2=-4 has two complex solutions: x=3+2i and x=3-2i.",
        "x=3+2i and x=3-2i are called each others' complex conjugate.",
        "",
        "Numbers of the form a+bi are called complex numbers.",
        "",
        "In general a+bi and a−bi are each other's complex conjugate.",
        "A Gaussian Integer is a complex number a+bi such that both a and b are integers.",
        "",
        "The regular integers are also Gaussian integers (with b=0).",
        "",
        "To distinguish them from Gaussian integers with b ≠ 0 we call such integers \"rational integers.\"",
        "",
        "A Gaussian integer is called a divisor of a rational integer n if the result is also a Gaussian integer.",
        "",
        "If for example we divide 5 by 1+2i we can simplify  in the following manner:",
        "",
        "Multiply numerator and denominator by the complex conjugate of 1+2i: 1−2i.",
        "",
        "The result is ",
        ".",
        "",
        "So 1+2i is a divisor of 5.",
        "",
        "Note that 1+i is not a divisor of 5 because .",
        "",
        "Note also that if the Gaussian Integer (a+bi) is a divisor of a rational integer n, then its complex conjugate (a−bi) is also a divisor of n.",
        "In fact, 5 has six divisors such that the real part is positive: {1, 1 + 2i, 1 − 2i, 2 + i, 2 − i, 5}.",
        "",
        "The following is a table of all of the divisors for the first five positive rational integers:",
        "",
        "n Gaussian integer divisors",
        "with positive real partSum s(n) of these",
        "",
        "divisors111",
        "21, 1+i, 1-i, 25",
        "31, 34",
        "41, 1+i, 1-i, 2, 2+2i, 2-2i,413",
        "51, 1+2i, 1-2i, 2+i, 2-i, 512",
        "For divisors with positive real parts, then, we have: .",
        "For 1 ≤ n ≤ 105, ∑ s(n)=17924657155.",
        "What is ∑ s(n) for 1 ≤ n ≤ 108?"
      ]
    },
    {
      "id": "5900f4071000cf542c50ff19",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 154: Exploring Pascal's pyramid",
      "tests": [
        "assert.strictEqual(euler154(), 479742450, 'message: <code>euler154()</code> should return 479742450.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler154() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler154();"
      ],
      "description": [
        "A triangular pyramid is constructed using spherical balls so that each ball rests on exactly three balls of the next lower level.",
        "",
        "Then, we calculate the number of paths leading from the apex to each position:",
        "A path starts at the apex and progresses downwards to any of the three spheres directly below the current position.",
        "Consequently, the number of paths to reach a certain position is the sum of the numbers immediately above it (depending on the position, there are up to three numbers above it).",
        "The result is Pascal's pyramid and the numbers at each level n are the coefficients of the trinomial expansion ",
        "(x + y + z)n.",
        "How many coefficients in the expansion of (x + y + z)200000 are multiples of 1012?"
      ]
    },
    {
      "id": "5900f4081000cf542c50ff1a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 155: Counting Capacitor Circuits",
      "tests": [
        "assert.strictEqual(euler155(), 3857447, 'message: <code>euler155()</code> should return 3857447.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler155() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler155();"
      ],
      "description": [
        "An electric circuit uses exclusively identical capacitors of the same value C.",
        "",
        "The capacitors can be connected in series or in parallel to form sub-units, which can then be connected in series or in parallel with other capacitors or other sub-units to form larger sub-units, and so on up to a final circuit.",
        "Using this simple procedure and up to n identical capacitors, we can make circuits having a range of different total capacitances. For example, using up to n=3 capacitors of 60 F each, we can obtain the following 7 distinct total capacitance values: ",
        "",
        "If we denote by D(n) the number of distinct total capacitance values we can obtain when using up to n equal-valued capacitors and the simple procedure described above, we have: D(1)=1, D(2)=3, D(3)=7 ...",
        "Find D(18).",
        "Reminder : When connecting capacitors C1, C2 etc in parallel, the total capacitance is CT = C1 + C2 +...,",
        "",
        "whereas when connecting them in series, the overall capacitance is given by:"
      ]
    },
    {
      "id": "5900f4091000cf542c50ff1b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 156: Counting Digits",
      "tests": [
        "assert.strictEqual(euler156(), 21295121502550, 'message: <code>euler156()</code> should return 21295121502550.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler156() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler156();"
      ],
      "description": [
        "Starting from zero the natural numbers are written down in base 10 like this:",
        "",
        "0 1 2 3 4 5 6 7 8 9 10 11 12....",
        "",
        "Consider the digit d=1. After we write down each number n, we will update the number of ones that have occurred and call this number f(n,1). The first values for f(n,1), then, are as follows:",
        "",
        "nf(n,1)",
        "00",
        "11",
        "21",
        "31",
        "41",
        "51",
        "61",
        "71",
        "81",
        "91",
        "102",
        "114",
        "125",
        "",
        "Note that f(n,1) never equals 3.",
        "",
        "So the first two solutions of the equation f(n,1)=n are n=0 and n=1. The next solution is n=199981.",
        "In the same manner the function f(n,d) gives the total number of digits d that have been written down after the number n has been written.",
        "",
        "In fact, for every digit d ≠ 0, 0 is the first solution of the equation f(n,d)=n.",
        "Let s(d) be the sum of all the solutions for which f(n,d)=n.",
        "",
        "You are given that s(1)=22786974071.",
        "Find  ∑ s(d) for 1 ≤ d ≤ 9.",
        "Note: if, for some n, f(n,d)=n",
        " for more than one value of d this value of n is counted again for every value of d for which f(n,d)=n."
      ]
    },
    {
      "id": "5900f4091000cf542c50ff1c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 157: Solving the diophantine equation 1/a+1/b= p/10n",
      "tests": [
        "assert.strictEqual(euler157(), 53490, 'message: <code>euler157()</code> should return 53490.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler157() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler157();"
      ],
      "description": [
        "Consider the diophantine equation 1/a+1/b= p/10n with a, b, p, n positive integers and a ≤ b.",
        "For n=1 this equation has 20 solutions that are listed below:",
        "1/1+1/1=20/10",
        "1/1+1/2=15/10",
        "1/1+1/5=12/10",
        "1/1+1/10=11/10",
        "1/2+1/2=10/10",
        "1/2+1/5=7/10",
        "1/2+1/10=6/10",
        "1/3+1/6=5/10",
        "1/3+1/15=4/10",
        "1/4+1/4=5/10",
        "1/4+1/20=3/10",
        "1/5+1/5=4/10",
        "1/5+1/10=3/10",
        "1/6+1/30=2/10",
        "1/10+1/10=2/10",
        "1/11+1/110=1/10",
        "1/12+1/60=1/10",
        "1/14+1/35=1/10",
        "1/15+1/30=1/10",
        "1/20+1/20=1/10",
        "How many solutions has this equation for 1 ≤ n ≤ 9?"
      ]
    },
    {
      "id": "5900f40a1000cf542c50ff1d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 158: Exploring strings for which only one character comes lexicographically after its neighbour to the left",
      "tests": [
        "assert.strictEqual(euler158(), 409511334375, 'message: <code>euler158()</code> should return 409511334375.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler158() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler158();"
      ],
      "description": [
        "Taking three different letters from the 26 letters of the alphabet, character strings of length three can be formed.",
        "Examples are 'abc', 'hat' and 'zyx'.",
        "When we study these three examples we see that for 'abc' two characters come lexicographically after its neighbour to the left. ",
        "For 'hat' there is exactly one character that comes lexicographically after its neighbour to the left. For 'zyx' there are zero characters that come lexicographically after its neighbour to the left.",
        "In all there are 10400 strings of length 3 for which exactly one character comes lexicographically after its neighbour to the left.",
        "We now consider strings of n ≤ 26 different characters from the alphabet. ",
        "For every n, p(n) is the number of strings of length n for which exactly one character comes lexicographically after its neighbour to the left. ",
        "What is the maximum value of p(n)?"
      ]
    },
    {
      "id": "5900f40c1000cf542c50ff1e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 159: Digital root sums of factorisations",
      "tests": [
        "assert.strictEqual(euler159(), 14489159, 'message: <code>euler159()</code> should return 14489159.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler159() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler159();"
      ],
      "description": [
        "A composite number can be factored many different ways.  ",
        "For instance, not including multiplication by one, 24 can be factored in 7 distinct ways:",
        "",
        "24 = 2x2x2x3",
        "24 = 2x3x4",
        "24 = 2x2x6",
        "24 = 4x6",
        "24 = 3x8",
        "24 = 2x12",
        "24 = 24",
        "",
        "Recall that the digital root of a number, in base 10, is found by adding together the digits of that number, ",
        "and repeating that process until a number is arrived at that is less than 10.  ",
        "Thus the digital root of 467 is 8.",
        "We shall call a Digital Root Sum (DRS) the sum of the digital roots of the individual factors of our number.",
        " The chart below demonstrates all of the DRS values for 24.",
        "FactorisationDigital Root Sum2x2x2x3",
        "92x3x4",
        "92x2x6",
        "104x6",
        "103x8",
        "112x12",
        "524",
        "6The maximum Digital Root Sum  of 24 is 11.",
        "The function mdrs(n) gives the maximum Digital Root Sum of n. So  mdrs(24)=11.",
        "Find ∑mdrs(n) for 1 < n < 1,000,000."
      ]
    },
    {
      "id": "5900f40d1000cf542c50ff1f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 160: Factorial trailing digits",
      "tests": [
        "assert.strictEqual(euler160(), 16576, 'message: <code>euler160()</code> should return 16576.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler160() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler160();"
      ],
      "description": [
        "For any N, let f(N) be the last five digits before the trailing zeroes in N!.",
        "For example,",
        "9! = 362880 so f(9)=36288",
        "10! = 3628800 so f(10)=36288",
        "20! = 2432902008176640000 so f(20)=17664",
        "Find f(1,000,000,000,000)"
      ]
    },
    {
      "id": "5900f40d1000cf542c50ff20",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 161: Triominoes",
      "tests": [
        "assert.strictEqual(euler161(), 20574308184277972, 'message: <code>euler161()</code> should return 20574308184277972.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler161() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler161();"
      ],
      "description": [
        "A triomino is a shape consisting of three squares joined via the edges.",
        "There are two basic forms:",
        "",
        "",
        "",
        "If all possible orientations are taken into account there are six:",
        "",
        "",
        "",
        "Any n by m grid for which nxm is divisible by 3 can be tiled with triominoes.",
        "If we consider tilings that can be obtained by reflection or rotation from another tiling as different there are 41 ways a 2 by 9 grid can be  tiled with triominoes:",
        "",
        "",
        "",
        "In how many ways can a 9 by 12 grid be tiled in this way by triominoes?"
      ]
    },
    {
      "id": "5900f40e1000cf542c50ff21",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 162: Hexadecimal numbers",
      "tests": [
        "assert.strictEqual(euler162(), 3D58725572C62302, 'message: <code>euler162()</code> should return 3D58725572C62302.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler162() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler162();"
      ],
      "description": [
        "In  the hexadecimal number system numbers are represented using 16 different digits:",
        "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F",
        "The hexadecimal number AF when written in the decimal number system equals 10x16+15=175.",
        "In the 3-digit hexadecimal numbers 10A, 1A0, A10, and A01 the digits 0,1 and A are all present.",
        "Like numbers written in base ten we write hexadecimal numbers without leading zeroes.",
        "How many hexadecimal numbers containing at most sixteen hexadecimal digits exist with all of the digits 0,1, and A present at least once?",
        "Give your answer as a hexadecimal number.",
        "(A,B,C,D,E and F in upper case, without any leading or trailing code that marks the number as hexadecimal and without leading zeroes , e.g. 1A3F and not: 1a3f and not 0x1a3f and not $1A3F and not #1A3F and not 0000001A3F)"
      ]
    },
    {
      "id": "5900f40f1000cf542c50ff22",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 163: Cross-hatched triangles",
      "tests": [
        "assert.strictEqual(euler163(), 343047, 'message: <code>euler163()</code> should return 343047.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler163() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler163();"
      ],
      "description": [
        "Consider an equilateral triangle in which straight lines are drawn from each vertex to the middle of the opposite side, such as in the size 1 triangle in the sketch below.",
        "",
        "Sixteen triangles of either different shape or size or orientation or location can now be observed in that triangle. Using size 1 triangles as building blocks, larger triangles can be formed, such as the size 2 triangle in the above sketch. One-hundred and four triangles of either different shape or size or orientation or location can now be observed in that size 2 triangle.",
        "It can be observed that the size 2 triangle contains 4 size 1 triangle building blocks. A size 3 triangle would contain 9 size 1 triangle building blocks and a size n triangle would thus contain n2 size 1 triangle building blocks.",
        "If we denote T(n) as the number of triangles present in a triangle of size n, then",
        "T(1) = 16",
        "T(2) = 104",
        "Find T(36)."
      ]
    },
    {
      "id": "5900f4111000cf542c50ff23",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 164: Numbers for which no three consecutive digits have a sum greater than a given value",
      "tests": [
        "assert.strictEqual(euler164(), 378158756814587, 'message: <code>euler164()</code> should return 378158756814587.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler164() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler164();"
      ],
      "description": [
        "How many 20 digit numbers n (without any leading zero) exist such that no three consecutive digits of n have a sum greater than 9?"
      ]
    },
    {
      "id": "5900f4111000cf542c50ff24",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 165: Intersections",
      "tests": [
        "assert.strictEqual(euler165(), 2868868, 'message: <code>euler165()</code> should return 2868868.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler165() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler165();"
      ],
      "description": [
        "A segment is uniquely defined by its two endpoints. By considering two line segments in plane geometry there are three possibilities: ",
        "the segments have zero points, one point, or infinitely many points in common.",
        "Moreover when two segments have exactly one point in common it might be the case that that common point is an endpoint of either one of the segments or of both. If a common point of two segments is not an endpoint of either of the segments it is an interior point of both segments.",
        "We will call a common point T of two segments L1 and L2 a true intersection point of L1 and L2  if T is the only common point of L1 and L2  and T is an interior point of both segments.",
        "",
        "Consider the three segments L1, L2, and L3:",
        "L1: (27, 44) to (12, 32)",
        "L2: (46, 53) to (17, 62)",
        "L3: (46, 70) to (22, 40)",
        "It can be verified that line segments L2 and L3 have a true intersection point. We note that as the one of the end points of L3: (22,40) lies on L1 this is not considered to be a true point of intersection. L1 and L2 have no common point. So among the three line segments, we find one true intersection point.",
        "Now let us do the same for 5000 line segments. To this end, we generate 20000 numbers using the so-called \"Blum Blum Shub\" pseudo-random number generator.",
        "s0 = 290797",
        "sn+1 = sn×sn (modulo 50515093)",
        "tn = sn (modulo 500)",
        "To create each line segment, we use four consecutive numbers tn. That is, the first line segment is given by:",
        "(t1, t2) to (t3, t4)",
        "The first four numbers computed according to the above generator should be: 27, 144, 12 and 232. The first segment would thus be (27,144) to (12,232).",
        "How many distinct true intersection points are found among the 5000 line segments?"
      ]
    },
    {
      "id": "5900f4131000cf542c50ff25",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 166: Criss Cross",
      "tests": [
        "assert.strictEqual(euler166(), 7130034, 'message: <code>euler166()</code> should return 7130034.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler166() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler166();"
      ],
      "description": [
        "A 4x4 grid is filled with digits d, 0 ≤ d ≤ 9.",
        "",
        "It can be seen that in the grid",
        "",
        "",
        "6 3 3 0",
        "5 0 4 3",
        "0 7 1 4",
        "1 2 4 5",
        "",
        "the sum of each row and each column has the value 12. Moreover the sum of each diagonal is also 12.",
        "",
        "In how many ways can you fill a 4x4 grid with the digits d, 0 ≤ d ≤ 9 so that each row, each column, and both diagonals have the same sum?"
      ]
    },
    {
      "id": "5900f4141000cf542c50ff26",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 167: Investigating Ulam sequences",
      "tests": [
        "assert.strictEqual(euler167(), 3916160068885, 'message: <code>euler167()</code> should return 3916160068885.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler167() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler167();"
      ],
      "description": [
        "For two positive integers a and b, the Ulam sequence U(a,b) is defined by U(a,b)1 = a, U(a,b)2 = b and for k > 2,",
        "U(a,b)k is the smallest integer greater than U(a,b)(k-1) which can be written in exactly one way as the sum of two distinct previous members of U(a,b).",
        "For example, the sequence U(1,2) begins with",
        "1, 2, 3 = 1 + 2, 4 = 1 + 3, 6 = 2 + 4, 8 = 2 + 6, 11 = 3 + 8;",
        "5 does not belong to it because 5 = 1 + 4 = 2 + 3 has two representations as the sum of two previous members, likewise 7 = 1 + 6 = 3 + 4.",
        "Find ∑U(2,2n+1)k for 2 ≤ n ≤10, where k = 1011."
      ]
    },
    {
      "id": "5900f4151000cf542c50ff27",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 168: Number Rotations",
      "tests": [
        "assert.strictEqual(euler168(), 59206, 'message: <code>euler168()</code> should return 59206.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler168() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler168();"
      ],
      "description": [
        "Consider the number 142857. We can right-rotate this number by moving the last digit (7) to the front of it, giving us 714285.",
        "It can be verified that 714285=5×142857.",
        "This demonstrates an unusual property of 142857: it is a divisor of its right-rotation.",
        "Find the last 5 digits of the sum of all integers n, 10 < n < 10100, that have this property."
      ]
    },
    {
      "id": "5900f4151000cf542c50ff28",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 169: Exploring the number of different ways a number can be expressed as a sum of powers of 2",
      "tests": [
        "assert.strictEqual(euler169(), 178653872807, 'message: <code>euler169()</code> should return 178653872807.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler169() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler169();"
      ],
      "description": [
        "Define f(0)=1 and f(n) to be the number of different ways n can be expressed as a sum of integer powers of 2 using each power no more than twice.",
        "For example, f(10)=5 since there are five different ways to express 10:",
        "1 + 1 + 8",
        "1 + 1 + 4 + 41 + 1 + 2 + 2 + 4",
        "2 + 4 + 4",
        "2 + 8",
        "What is f(1025)?"
      ]
    },
    {
      "id": "5900f4161000cf542c50ff29",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 170: Find the largest 0 to 9 pandigital that can be formed by concatenating products",
      "tests": [
        "assert.strictEqual(euler170(), 9857164023, 'message: <code>euler170()</code> should return 9857164023.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler170() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler170();"
      ],
      "description": [
        "Take the number 6 and multiply it by each of 1273 and 9854:",
        "",
        "6 × 1273 =  7638",
        "6 × 9854 = 59124",
        "",
        "By concatenating these products we get the 1 to 9 pandigital 763859124. We will call 763859124 the \"concatenated product of 6 and (1273,9854)\". Notice too, that the concatenation of the input numbers, 612739854, is also 1 to 9 pandigital.",
        "",
        "The same can be done for 0 to 9 pandigital numbers.",
        "",
        "What is the largest 0 to 9 pandigital 10-digit concatenated product of an integer with two or more other integers, such that the concatenation of the input numbers is also a 0 to 9 pandigital 10-digit number?"
      ]
    },
    {
      "id": "5900f4181000cf542c50ff2a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 171: Finding numbers for which the sum of the squares of the digits is a square",
      "tests": [
        "assert.strictEqual(euler171(), 142989277, 'message: <code>euler171()</code> should return 142989277.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler171() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler171();"
      ],
      "description": [
        "For a positive integer n, let f(n) be the sum of the squares of the digits (in base 10) of n, e.g.",
        "f(3) = 32 = 9,",
        "f(25) = 22 + 52 = 4 + 25 = 29,",
        "f(442) = 42 + 42 + 22 = 16 + 16 + 4 = 36",
        "Find the last nine digits of the sum of all n, 0 < n < 1020, such that f(n) is a perfect square."
      ]
    },
    {
      "id": "5900f4181000cf542c50ff2b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 172: Investigating numbers with few repeated digits",
      "tests": [
        "assert.strictEqual(euler172(), 227485267000992000, 'message: <code>euler172()</code> should return 227485267000992000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler172() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler172();"
      ],
      "description": [
        "How many 18-digit numbers n (without leading zeros) are there such that no digit occurs more than three times in n?"
      ]
    },
    {
      "id": "5900f41a1000cf542c50ff2c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 173: Using up to one million tiles how many different \"hollow\" square laminae can be formed?",
      "tests": [
        "assert.strictEqual(euler173(), 1572729, 'message: <code>euler173()</code> should return 1572729.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler173() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler173();"
      ],
      "description": [
        "We shall define a square lamina to be a square outline with a square \"hole\" so that the shape possesses vertical and horizontal symmetry. For example, using exactly thirty-two square tiles we can form two different square laminae:",
        "",
        "",
        "With one-hundred tiles, and not necessarily using all of the tiles at one time, it is possible to form forty-one different square laminae.",
        "Using up to one million tiles how many different square laminae can be formed?"
      ]
    },
    {
      "id": "5900f41a1000cf542c50ff2d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 174: Counting the number of \"hollow\" square laminae that can form one, two, three, ... distinct arrangements",
      "tests": [
        "assert.strictEqual(euler174(), 209566, 'message: <code>euler174()</code> should return 209566.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler174() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler174();"
      ],
      "description": [
        "We shall define a square lamina to be a square outline with a square \"hole\" so that the shape possesses vertical and horizontal symmetry.",
        "Given eight tiles it is possible to form a lamina in only one way: 3x3 square with a 1x1 hole in the middle. However, using thirty-two tiles it is possible to form two distinct laminae.",
        "",
        "",
        "If t represents the number of tiles used, we shall say that t = 8 is type L(1) and t = 32 is type L(2).",
        "Let N(n) be the number of t ≤ 1000000 such that t is type L(n); for example, N(15) = 832.",
        "What is ∑ N(n) for 1 ≤ n ≤ 10?"
      ]
    },
    {
      "id": "5900f41c1000cf542c50ff2e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 175: Fractions involving the number of different ways a number can be expressed as a sum of powers of 2",
      "tests": [
        "assert.strictEqual(euler175(), 1, 13717420, 8, 'message: <code>euler175()</code> should return 1, 13717420, 8.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler175() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler175();"
      ],
      "description": [
        "Define f(0)=1 and f(n) to be the number of ways to write n as a sum of powers of 2 where no power occurs more than twice. ",
        "",
        "For example, f(10)=5 since there are five different ways to express 10:10 = 8+2 = 8+1+1 = 4+4+2 = 4+2+2+1+1 = 4+4+1+1",
        "",
        "It can be shown that for every fraction p/q (p>0, q>0) there exists at least one integer n such that f(n)/f(n-1)=p/q.",
        "For instance, the smallest n for which f(n)/f(n-1)=13/17 is 241.",
        "The binary expansion of 241 is 11110001.",
        "Reading this binary number from the most significant bit to the least significant bit there are 4 one's, 3 zeroes and 1 one. We shall call the string 4,3,1 the Shortened Binary Expansion of 241.",
        "Find the Shortened Binary Expansion of the smallest n for which f(n)/f(n-1)=123456789/987654321.",
        "Give your answer as comma separated integers, without any whitespaces."
      ]
    },
    {
      "id": "5900f41c1000cf542c50ff2f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 176: Right-angled triangles that share a cathetus",
      "tests": [
        "assert.strictEqual(euler176(), 96818198400000, 'message: <code>euler176()</code> should return 96818198400000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler176() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler176();"
      ],
      "description": [
        "The four right-angled triangles with sides (9,12,15), (12,16,20), (5,12,13) and (12,35,37) all have one of the shorter sides (catheti) equal to 12. It can be shown that no other integer sided right-angled triangle exists with one of the catheti equal to 12.",
        "Find the smallest integer that can be the length of a cathetus of exactly 47547 different integer sided right-angled triangles."
      ]
    },
    {
      "id": "5900f41e1000cf542c50ff30",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 177: Integer angled Quadrilaterals",
      "tests": [
        "assert.strictEqual(euler177(), 129325, 'message: <code>euler177()</code> should return 129325.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler177() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler177();"
      ],
      "description": [
        "Let ABCD be a convex quadrilateral, with diagonals AC and BD. At each vertex the diagonal makes an angle with each of the two sides, creating eight corner angles.",
        "",
        "For example, at vertex A, the two angles are CAD, CAB.",
        "We call such a quadrilateral for which all eight corner angles have integer values when measured in degrees an \"integer angled quadrilateral\". An example of an integer angled quadrilateral is a square, where all eight corner angles are 45°. Another example is given by DAC = 20°, BAC = 60°, ABD = 50°, CBD = 30°, BCA = 40°, DCA = 30°, CDB = 80°, ADB = 50°.",
        "What is the total number of non-similar integer angled quadrilaterals?",
        "Note: In your calculations you may assume that a calculated angle is integral if it is within a tolerance of 10-9 of an integer value."
      ]
    },
    {
      "id": "5900f41e1000cf542c50ff31",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 178: Step Numbers",
      "tests": [
        "assert.strictEqual(euler178(), 126461847755, 'message: <code>euler178()</code> should return 126461847755.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler178() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler178();"
      ],
      "description": [
        "Consider the number 45656. ",
        "It can be seen that each pair of consecutive digits of 45656 has a difference of one.",
        "A number for which every pair of consecutive digits has a difference of one is called a step number.",
        "A pandigital number  contains every decimal digit from 0 to 9 at least once.",
        "",
        "How many pandigital step numbers less than 1040 are there?"
      ]
    },
    {
      "id": "5900f41f1000cf542c50ff32",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 179: Consecutive positive divisors",
      "tests": [
        "assert.strictEqual(euler179(), 986262, 'message: <code>euler179()</code> should return 986262.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler179() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler179();"
      ],
      "description": [
        "Find the number of integers 1 < n < 107, for which n and n + 1 have the same number of positive divisors. For example, 14 has the positive divisors 1, 2, 7, 14 while 15 has 1, 3, 5, 15."
      ]
    },
    {
      "id": "5900f4201000cf542c50ff33",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 180: Rational zeros of a function of three variables",
      "tests": [
        "assert.strictEqual(euler180(), 285196020571078980, 'message: <code>euler180()</code> should return 285196020571078980.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler180() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler180();"
      ],
      "description": [
        "For any integer n, consider the three functions",
        "f1,n(x,y,z) = xn+1 + yn+1 − zn+1f2,n(x,y,z) = (xy + yz + zx)*(xn-1 + yn-1 − zn-1)f3,n(x,y,z) = xyz*(xn-2 + yn-2 − zn-2)",
        "and their combination",
        "fn(x,y,z) = f1,n(x,y,z) + f2,n(x,y,z) − f3,n(x,y,z)",
        "We call (x,y,z) a golden triple of order k if x, y, and z are all rational numbers of the form a / b with",
        "0 < a < b ≤ k and there is (at least) one integer n, so that fn(x,y,z) = 0.",
        "Let s(x,y,z) = x + y + z.",
        "Let t = u / v be the sum of all distinct s(x,y,z) for all golden triples (x,y,z) of order 35. All the s(x,y,z) and t  must be in reduced form.",
        "Find u + v."
      ]
    },
    {
      "id": "5900f4231000cf542c50ff34",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 181: Investigating in how many ways objects of two different colours can be grouped",
      "tests": [
        "assert.strictEqual(euler181(), 83735848679360670, 'message: <code>euler181()</code> should return 83735848679360670.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler181() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler181();"
      ],
      "description": [
        "Having three black objects B and one white object W they can be grouped in 7 ways like this:",
        "(BBBW)(B,BBW)(B,B,BW)(B,B,B,W)",
        "(B,BB,W)(BBB,W)(BB,BW)",
        "In how many ways can sixty black objects B and forty white objects W be  thus grouped?"
      ]
    },
    {
      "id": "5900f4231000cf542c50ff35",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 182: RSA encryption",
      "tests": [
        "assert.strictEqual(euler182(), 399788195976, 'message: <code>euler182()</code> should return 399788195976.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler182() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler182();"
      ],
      "description": [
        "The RSA encryption is based on the following procedure:",
        "Generate two distinct primes p and q.Compute n=pq and φ=(p-1)(q-1).",
        "Find an integer e, 1<e<φ, such that gcd(e,φ)=1.",
        "A message in this system is a number in the interval [0,n-1].",
        "A text to be encrypted is then somehow converted to messages (numbers in the interval [0,n-1]).",
        "To encrypt the text,  for each message, m, c=me mod n is calculated.",
        "To decrypt the text, the following procedure is needed: calculate d such that ed=1 mod φ, then for each encrypted message, c, calculate m=cd mod n.",
        "There exist values of e and m  such that me mod n=m.We call messages m for which me mod n=m unconcealed messages.",
        "An issue when choosing e is that there should not be too many unconcealed messages.  For instance, let p=19 and q=37.",
        "Then n=19*37=703 and φ=18*36=648.",
        "If we choose e=181, then, although gcd(181,648)=1 it turns out that all possible messagesm (0≤m≤n-1) are unconcealed when calculating me mod n.",
        "For any valid choice of e there exist some unconcealed messages.",
        "It's important that the number of unconcealed messages is at a minimum.",
        "Choose p=1009 and q=3643.",
        "Find the sum of all values of e, 1<e<φ(1009,3643) and gcd(e,φ)=1, so that the number of unconcealed messages for this value of e is at a minimum."
      ]
    },
    {
      "id": "5900f4231000cf542c50ff36",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 183: Maximum product of parts",
      "tests": [
        "assert.strictEqual(euler183(), 48861552, 'message: <code>euler183()</code> should return 48861552.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler183() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler183();"
      ],
      "description": [
        "Let N be a positive integer and let N be split into k equal parts, r = N/k, so that N = r + r + ... + r.",
        "Let P be the product of these parts, P = r × r × ... × r = rk.",
        "",
        "For example, if 11 is split into five equal parts, 11 = 2.2 + 2.2 + 2.2 + 2.2 + 2.2, then P = 2.25 = 51.53632.",
        "",
        "Let M(N) = Pmax for a given value of N.",
        "",
        "It turns out that the maximum for N = 11 is found by splitting eleven into four equal parts which leads to Pmax = (11/4)4; that is, M(11) = 14641/256 = 57.19140625, which is a terminating decimal.",
        "",
        "However, for N = 8 the maximum is achieved by splitting it into three equal parts, so M(8) = 512/27, which is a non-terminating decimal.",
        "",
        "Let D(N) = N if M(N) is a non-terminating decimal and D(N) = -N if M(N) is a terminating decimal.",
        "",
        "For example, ΣD(N) for 5 ≤ N ≤ 100 is 2438.",
        "",
        "Find ΣD(N) for 5 ≤ N ≤ 10000."
      ]
    },
    {
      "id": "5900f4241000cf542c50ff37",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 184: Triangles containing the origin",
      "tests": [
        "assert.strictEqual(euler184(), 1725323624056, 'message: <code>euler184()</code> should return 1725323624056.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler184() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler184();"
      ],
      "description": [
        "Consider the set Ir of points (x,y) with integer co-ordinates in the interior of the circle with radius r, centered at the origin, i.e. x2 + y2 < r2.",
        "For a radius of 2, I2 contains the nine points (0,0), (1,0), (1,1), (0,1), (-1,1), (-1,0), (-1,-1), (0,-1) and (1,-1). There are eight triangles having all three vertices in I2 which contain the origin in the interior. Two of them are shown below, the others are obtained from these by rotation.",
        "",
        "",
        "For a radius of 3, there are 360 triangles containing the origin in the interior and having all vertices in I3 and for I5 the number is 10600.",
        "",
        "How many triangles are there containing the origin in the interior and having all three vertices in I105?"
      ]
    },
    {
      "id": "5900f4251000cf542c50ff38",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 185: Number Mind",
      "tests": [
        "assert.strictEqual(euler185(), 4640261571849533, 'message: <code>euler185()</code> should return 4640261571849533.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler185() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler185();"
      ],
      "description": [
        "The game Number Mind is a variant of the well known game Master Mind.",
        "Instead of coloured pegs, you have to guess a secret sequence of digits. After each guess you're only told in how many places you've guessed the correct digit. So, if the sequence was 1234 and you guessed 2036, you'd be told that you have one correct digit; however, you would NOT be told that you also have another digit in the wrong place.",
        "",
        "For instance, given the following guesses for a 5-digit secret sequence,",
        "90342 ;2 correct",
        "70794 ;0 correct",
        "39458 ;2 correct",
        "34109 ;1 correct",
        "51545 ;2 correct",
        "12531 ;1 correct",
        "The correct sequence 39542 is unique.",
        "",
        "Based on the following guesses,",
        "",
        "5616185650518293 ;2 correct",
        "3847439647293047 ;1 correct",
        "5855462940810587 ;3 correct",
        "9742855507068353 ;3 correct",
        "4296849643607543 ;3 correct",
        "3174248439465858 ;1 correct",
        "4513559094146117 ;2 correct",
        "7890971548908067 ;3 correct",
        "8157356344118483 ;1 correct",
        "2615250744386899 ;2 correct",
        "8690095851526254 ;3 correct",
        "6375711915077050 ;1 correct",
        "6913859173121360 ;1 correct",
        "6442889055042768 ;2 correct",
        "2321386104303845 ;0 correct",
        "2326509471271448 ;2 correct",
        "5251583379644322 ;2 correct",
        "1748270476758276 ;3 correct",
        "4895722652190306 ;1 correct",
        "3041631117224635 ;3 correct",
        "1841236454324589 ;3 correct",
        "2659862637316867 ;2 correct",
        "",
        "Find the unique 16-digit secret sequence."
      ]
    },
    {
      "id": "5900f4281000cf542c50ff39",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 186: Connectedness of a network",
      "tests": [
        "assert.strictEqual(euler186(), 2325629, 'message: <code>euler186()</code> should return 2325629.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler186() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler186();"
      ],
      "description": [
        "Here are the records from a busy telephone system with one million users:",
        "",
        "RecNrCallerCalled120000710005326001835004393600863701497.........",
        "The telephone number of the caller and the called number in record n are Caller(n) = S2n-1 and Called(n) = S2n where S1,2,3,... come from the \"Lagged Fibonacci Generator\":",
        "",
        "For 1 ≤ k ≤ 55, Sk = [100003 - 200003k + 300007k3] (modulo 1000000)",
        "For 56 ≤ k, Sk = [Sk-24 + Sk-55] (modulo 1000000)",
        "",
        "If Caller(n) = Called(n) then the user is assumed to have misdialled and the call fails; otherwise the call is successful.",
        "",
        "From the start of the records, we say that any pair of users X and Y are friends if X calls Y or vice-versa. Similarly, X is a friend of a friend of Z if X is a friend of Y and Y is a friend of Z; and so on for longer chains.",
        "",
        "The Prime Minister's phone number is 524287. After how many successful calls, not counting misdials, will 99% of the users (including the PM) be a friend, or a friend of a friend etc., of the Prime Minister?"
      ]
    },
    {
      "id": "5900f4291000cf542c50ff3a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 187: Semiprimes",
      "tests": [
        "assert.strictEqual(euler187(), 17427258, 'message: <code>euler187()</code> should return 17427258.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler187() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler187();"
      ],
      "description": [
        "A composite is a number containing at least two prime factors. For example, 15 = 3 × 5; 9 = 3 × 3; 12 = 2 × 2 × 3.",
        "",
        "There are ten composites below thirty containing precisely two, not necessarily distinct, prime factors:",
        "4, 6, 9, 10, 14, 15, 21, 22, 25, 26.",
        "",
        "How many composite integers, n < 108, have precisely two, not necessarily distinct, prime factors?"
      ]
    },
    {
      "id": "5900f4291000cf542c50ff3b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 188: The hyperexponentiation of a number",
      "tests": [
        "assert.strictEqual(euler188(), 95962097, 'message: <code>euler188()</code> should return 95962097.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler188() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler188();"
      ],
      "description": [
        "The hyperexponentiation or tetration of a number a by a positive integer b, denoted by a↑↑b or ba, is recursively defined by:",
        "a↑↑1 = a,",
        "a↑↑(k+1) = a(a↑↑k).",
        "",
        "Thus we have e.g. 3↑↑2 = 33 = 27, hence 3↑↑3 = 327 = 7625597484987 and 3↑↑4 is roughly 103.6383346400240996*10^12.",
        "Find the last 8 digits of 1777↑↑1855."
      ]
    },
    {
      "id": "5900f4291000cf542c50ff3c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 189: Tri-colouring a triangular grid",
      "tests": [
        "assert.strictEqual(euler189(), 10834893628237824, 'message: <code>euler189()</code> should return 10834893628237824.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler189() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler189();"
      ],
      "description": [
        "Consider the following configuration of 64 triangles:",
        "",
        "",
        "",
        "We wish to colour the interior of each triangle with one of three colours: red, green or blue, so that no two neighbouring triangles have the same colour. Such a colouring shall be called valid. Here, two triangles are said to be neighbouring if they share an edge.",
        "Note: if they only share a vertex, then they are not neighbours. ",
        "",
        "For example, here is a valid colouring of the above grid:",
        "",
        "",
        "A colouring C' which is obtained from a colouring C by rotation or reflection is considered distinct from C unless the two are identical.",
        "",
        "How many distinct valid colourings are there for the above configuration?"
      ]
    },
    {
      "id": "5900f42b1000cf542c50ff3d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 190: Maximising a weighted product",
      "tests": [
        "assert.strictEqual(euler190(), 371048281, 'message: <code>euler190()</code> should return 371048281.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler190() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler190();"
      ],
      "description": [
        "Let Sm = (x1, x2, ... , xm) be the m-tuple of positive real numbers with x1 + x2 + ... + xm = m for which Pm = x1 * x22 * ... * xmm is maximised.",
        "",
        "For example, it can be verified that [P10] = 4112 ([ ] is the integer part function).",
        "",
        "Find Σ[Pm] for 2 ≤ m ≤ 15."
      ]
    },
    {
      "id": "5900f42b1000cf542c50ff3e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 191: Prize Strings",
      "tests": [
        "assert.strictEqual(euler191(), 1918080160, 'message: <code>euler191()</code> should return 1918080160.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler191() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler191();"
      ],
      "description": [
        "A particular school offers cash rewards to children with good attendance and punctuality. If they are absent for three consecutive days or late on more than one occasion then they forfeit their prize.",
        "",
        "During an n-day period a trinary string is formed for each child consisting of L's (late), O's (on time), and A's (absent).",
        "",
        "Although there are eighty-one trinary strings for a 4-day period that can be formed, exactly forty-three strings would lead to a prize:",
        "",
        "OOOO OOOA OOOL OOAO OOAA OOAL OOLO OOLA OAOO OAOA",
        "OAOL OAAO OAAL OALO OALA OLOO OLOA OLAO OLAA AOOO",
        "AOOA AOOL AOAO AOAA AOAL AOLO AOLA AAOO AAOA AAOL",
        "AALO AALA ALOO ALOA ALAO ALAA LOOO LOOA LOAO LOAA",
        "LAOO LAOA LAAO",
        "",
        "How many \"prize\" strings exist over a 30-day period?"
      ]
    },
    {
      "id": "5900f42c1000cf542c50ff3f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 192: Best Approximations",
      "tests": [
        "assert.strictEqual(euler192(), 57060635927998344, 'message: <code>euler192()</code> should return 57060635927998344.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler192() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler192();"
      ],
      "description": [
        "Let x be a real number.",
        "A best approximation to x for the denominator bound d is a rational number r/s in reduced form, with s ≤ d, such that any rational number which is closer to x than r/s has a denominator larger than d:",
        "",
        "|p/q-x| < |r/s-x| ⇒ q > d",
        "",
        "For example, the best approximation to √13 for the denominator bound 20 is 18/5 and the best approximation to √13 for the denominator bound 30 is 101/28.",
        "",
        "Find the sum of all denominators of the best approximations to √n for the denominator bound 1012, where n is not a perfect square and 1 < n ≤ 100000."
      ]
    },
    {
      "id": "5900f42f1000cf542c50ff41",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 193: Squarefree Numbers",
      "tests": [
        "assert.strictEqual(euler193(), 684465067343069, 'message: <code>euler193()</code> should return 684465067343069.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler193() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler193();"
      ],
      "description": [
        "A positive integer n is called squarefree, if no square of a prime divides n, thus 1, 2, 3, 5, 6, 7, 10, 11 are squarefree, but not 4, 8, 9, 12.",
        "",
        "How many squarefree numbers are there below 250?"
      ]
    },
    {
      "id": "5900f42f1000cf542c50ff40",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 194: Coloured Configurations",
      "tests": [
        "assert.strictEqual(euler194(), 61190912, 'message: <code>euler194()</code> should return 61190912.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler194() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler194();"
      ],
      "description": [
        "Consider graphs built with the units A: ",
        "and B: , where the units are glued along",
        "the vertical edges as in the graph .",
        "",
        "A configuration of type (a,b,c) is a graph thus built of a units A and b units B, where the graph's vertices are coloured using up to c colours, so that no two adjacent vertices have the same colour.",
        "The compound graph above is an example of a configuration of type (2,2,6), in fact of type (2,2,c) for all c ≥ 4.",
        "",
        "Let N(a,b,c) be the number of configurations of type (a,b,c).",
        "For example, N(1,0,3) = 24, N(0,2,4) = 92928 and N(2,2,3) = 20736.",
        "",
        "Find the last 8 digits of N(25,75,1984)."
      ]
    },
    {
      "id": "5900f4311000cf542c50ff43",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 195: Inscribed circles of triangles with one angle of 60 degrees",
      "tests": [
        "assert.strictEqual(euler195(), 75085391, 'message: <code>euler195()</code> should return 75085391.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler195() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler195();"
      ],
      "description": [
        "Let's call an integer sided triangle with exactly one angle of 60 degrees a 60-degree triangle.",
        "Let r be the radius of the inscribed circle of such a 60-degree triangle.",
        "There are 1234 60-degree triangles for which r ≤ 100.",
        "Let T(n) be the number of 60-degree triangles for which r ≤ n, so",
        " T(100) = 1234,  T(1000) = 22767, and  T(10000) = 359912.",
        "",
        "Find T(1053779)."
      ]
    },
    {
      "id": "5900f4301000cf542c50ff42",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 196: Prime triplets",
      "tests": [
        "assert.strictEqual(euler196(), 322303240771079940, 'message: <code>euler196()</code> should return 322303240771079940.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler196() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler196();"
      ],
      "description": [
        "Build a triangle from all positive integers in the following way:",
        "",
        " 1",
        " 2  3",
        " 4  5  6",
        " 7  8  9 1011 12 13 14 15",
        "16 17 18 19 20 21",
        "22 23 24 25 26 27 2829 30 31 32 33 34 35 3637 38 39 40 41 42 43 44 45",
        "46 47 48 49 50 51 52 53 54 55",
        "56 57 58 59 60 61 62 63 64 65 66",
        ". . .",
        "",
        "Each positive integer has up to eight neighbours in the triangle.",
        "",
        "A set of three primes is called a prime triplet if one of the three primes has the other two as neighbours in the triangle.",
        "",
        "For example, in the second row, the prime numbers 2 and 3 are elements of some prime triplet.",
        "",
        "If row 8 is considered, it contains two primes which are elements of some prime triplet, i.e. 29 and 31.",
        "If row 9 is considered, it contains only one prime which is an element of some prime triplet: 37.",
        "",
        "Define S(n) as the sum of the primes in row n which are elements of any prime triplet.",
        "Then S(8)=60 and S(9)=37.",
        "",
        "You are given that S(10000)=950007619.",
        "",
        "Find  S(5678027) + S(7208785)."
      ]
    },
    {
      "id": "5900f4311000cf542c50ff44",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 197: Investigating the behaviour of a recursively defined sequence",
      "tests": [
        "assert.strictEqual(euler197(), 1.710637717, 'message: <code>euler197()</code> should return 1.710637717.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler197() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler197();"
      ],
      "description": [
        "Given is the function f(x) = ⌊230.403243784-x2⌋ × 10-9 ( ⌊ ⌋ is the floor-function),",
        "the sequence un is defined by u0 = -1 and un+1 = f(un).",
        "",
        "Find un + un+1 for n = 1012.",
        "Give your answer with 9 digits after the decimal point."
      ]
    },
    {
      "id": "5900f4331000cf542c50ff45",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 198: Ambiguous Numbers",
      "tests": [
        "assert.strictEqual(euler198(), 52374425, 'message: <code>euler198()</code> should return 52374425.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler198() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler198();"
      ],
      "description": [
        "A best approximation to a real number x for the denominator bound d is a rational number r/s (in reduced form) with s ≤ d, so that any rational number p/q which is closer to x than r/s has q > d.",
        "",
        "Usually the best approximation to a real number is uniquely determined for all denominator bounds. However, there are some exceptions, e.g. 9/40 has the two best approximations 1/4 and 1/5 for the denominator bound 6.",
        "We shall call a real number x ambiguous, if there is at least one denominator bound for which x possesses two best approximations. Clearly, an ambiguous number is necessarily rational.",
        "",
        "How many ambiguous numbers x = p/q,",
        "0 < x < 1/100, are there whose denominator q does not exceed 108?"
      ]
    },
    {
      "id": "5900f4341000cf542c50ff46",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 199: Iterative Circle Packing",
      "tests": [
        "assert.strictEqual(euler199(), 0.00396087, 'message: <code>euler199()</code> should return 0.00396087.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler199() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler199();"
      ],
      "description": [
        "Three circles of equal radius are placed inside a larger circle such that each pair of circles is tangent to one another and the inner circles do not overlap. There are four uncovered \"gaps\" which are to be filled iteratively with more tangent circles.",
        "",
        "",
        "",
        "At each iteration, a maximally sized circle is placed in each gap, which creates more gaps for the next iteration. After 3 iterations (pictured), there are 108 gaps and the fraction of the area which is not covered by circles is 0.06790342, rounded to eight decimal places.",
        "",
        "",
        "What fraction of the area is not covered by circles after 10 iterations?",
        "Give your answer rounded to eight decimal places using the format x.xxxxxxxx ."
      ]
    },
    {
      "id": "5900f4351000cf542c50ff47",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 200: Find the 200th prime-proof sqube containing the contiguous sub-string \"200\"",
      "tests": [
        "assert.strictEqual(euler200(), 229161792008, 'message: <code>euler200()</code> should return 229161792008.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler200() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler200();"
      ],
      "description": [
        "We shall define a sqube to be a number of the form, p2q3, where p and q are distinct primes.",
        "For example, 200 = 5223 or 120072949 = 232613.",
        "",
        "The first five squbes are 72, 108, 200, 392, and 500.",
        "",
        "Interestingly, 200 is also the first number for which you cannot change any single digit to make a prime; we shall call such numbers, prime-proof. The next prime-proof sqube which contains the contiguous sub-string \"200\" is 1992008.",
        "",
        "Find the 200th prime-proof sqube containing the contiguous sub-string \"200\"."
      ]
    },
    {
      "id": "5900f4361000cf542c50ff48",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 201: Subsets with a unique sum",
      "tests": [
        "assert.strictEqual(euler201(), 115039000, 'message: <code>euler201()</code> should return 115039000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler201() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler201();"
      ],
      "description": [
        "For any set A of numbers, let sum(A) be the sum of the elements of A.",
        "Consider the set B = {1,3,6,8,10,11}. There are 20 subsets of B containing three elements, and their sums are:",
        "",
        "",
        "sum({1,3,6}) = 10,",
        "sum({1,3,8}) = 12,",
        "sum({1,3,10}) = 14,",
        "sum({1,3,11}) = 15,",
        "sum({1,6,8}) = 15,",
        "sum({1,6,10}) = 17,",
        "sum({1,6,11}) = 18,",
        "sum({1,8,10}) = 19,",
        "sum({1,8,11}) = 20,",
        "sum({1,10,11}) = 22,",
        "sum({3,6,8}) = 17,",
        "sum({3,6,10}) = 19,",
        "sum({3,6,11}) = 20,",
        "sum({3,8,10}) = 21,",
        "sum({3,8,11}) = 22,",
        "sum({3,10,11}) = 24,",
        "sum({6,8,10}) = 24,",
        "sum({6,8,11}) = 25,",
        "sum({6,10,11}) = 27,",
        "sum({8,10,11}) = 29.",
        "",
        "Some of these sums occur more than once, others are unique.",
        "For a set A, let U(A,k) be the set of unique sums of k-element subsets of A, in our example we find U(B,3) = {10,12,14,18,21,25,27,29} and sum(U(B,3)) = 156.",
        "",
        "Now consider the 100-element set S = {12, 22, ... , 1002}.",
        "S has 100891344545564193334812497256 50-element subsets.",
        "",
        "Determine the sum of all integers which are the sum of exactly one of the 50-element subsets of S, i.e. find sum(U(S,50))."
      ]
    },
    {
      "id": "5900f4371000cf542c50ff49",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 202: Laserbeam",
      "tests": [
        "assert.strictEqual(euler202(), 1209002624, 'message: <code>euler202()</code> should return 1209002624.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler202() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler202();"
      ],
      "description": [
        "Three mirrors are arranged in the shape of an equilateral triangle, with their reflective surfaces pointing inwards. There is an infinitesimal gap at each vertex of the triangle through which a laser beam may pass.",
        "",
        "Label the vertices A, B and C. There are 2 ways in which a laser beam may enter vertex C, bounce off 11 surfaces, then exit through the same vertex: one way is shown below; the other is the reverse of that.",
        "",
        "",
        "  ",
        "",
        "There are 80840 ways in which a laser beam may enter vertex C, bounce off 1000001 surfaces, then exit through the same vertex.",
        "",
        "In how many ways can a laser beam enter at vertex C, bounce off 12017639147 surfaces, then exit through the same vertex?"
      ]
    },
    {
      "id": "5900f4381000cf542c50ff4a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 203: Squarefree Binomial Coefficients",
      "tests": [
        "assert.strictEqual(euler203(), 34029210557338, 'message: <code>euler203()</code> should return 34029210557338.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler203() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler203();"
      ],
      "description": [
        "The binomial coefficients nCk can be arranged in triangular form, Pascal's triangle, like this:",
        "",
        "",
        "111121133114641151010511615201561172135352171",
        ".........",
        "",
        "",
        "It can be seen that the first eight rows of Pascal's triangle contain twelve distinct numbers: 1, 2, 3, 4, 5, 6, 7, 10, 15, 20, 21 and 35.",
        "",
        "A positive integer n is called squarefree if no square of a prime divides n.",
        "Of the twelve distinct numbers in the first eight rows of Pascal's triangle, all except 4 and 20 are squarefree.",
        "The sum of the distinct squarefree numbers in the first eight rows is 105.",
        "",
        "Find the sum of the distinct squarefree numbers in the first 51 rows of Pascal's triangle."
      ]
    },
    {
      "id": "5900f4381000cf542c50ff4b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 204: Generalised Hamming Numbers",
      "tests": [
        "assert.strictEqual(euler204(), 2944730, 'message: <code>euler204()</code> should return 2944730.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler204() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler204();"
      ],
      "description": [
        "A Hamming number is a positive number which has no prime factor larger than 5.",
        "So the first few Hamming numbers are 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 15.",
        "There are 1105 Hamming numbers not exceeding 108.",
        "",
        "We will call a positive number a generalised Hamming number of type n, if it has no prime factor larger than n.",
        "Hence the Hamming numbers are the generalised Hamming numbers of type 5.",
        "",
        "How many generalised Hamming numbers of type 100 are there which don't exceed 109?"
      ]
    },
    {
      "id": "5900f4391000cf542c50ff4c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 205: Dice Game",
      "tests": [
        "assert.strictEqual(euler205(), 0.5731441, 'message: <code>euler205()</code> should return 0.5731441.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler205() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler205();"
      ],
      "description": [
        "Peter has nine four-sided (pyramidal) dice, each with faces numbered 1, 2, 3, 4.",
        "Colin has six six-sided (cubic) dice, each with faces numbered 1, 2, 3, 4, 5, 6.",
        "",
        "Peter and Colin roll their dice and compare totals: the highest total wins. The result is a draw if the totals are equal.",
        "",
        "What is the probability that Pyramidal Pete beats Cubic Colin? Give your answer rounded to seven decimal places in the form 0.abcdefg"
      ]
    },
    {
      "id": "5900f43a1000cf542c50ff4d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 206: Concealed Square",
      "tests": [
        "assert.strictEqual(euler206(), 1389019170, 'message: <code>euler206()</code> should return 1389019170.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler206() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler206();"
      ],
      "description": [
        "Find the unique positive integer whose square has the form 1_2_3_4_5_6_7_8_9_0, where each “_” is a single digit."
      ]
    },
    {
      "id": "5900f43c1000cf542c50ff4e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 207: Integer partition equations",
      "tests": [
        "assert.strictEqual(euler207(), 44043947822, 'message: <code>euler207()</code> should return 44043947822.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler207() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler207();"
      ],
      "description": [
        "For some positive integers k, there exists an integer partition of the form   4t = 2t + k,",
        "where 4t, 2t, and k are all positive integers and t is a real number.",
        "",
        "The first two such partitions are 41 = 21 + 2 and 41.5849625... = 21.5849625... + 6.",
        "",
        "Partitions where t is also an integer are called perfect. ",
        "For any m ≥ 1 let P(m) be the proportion of such partitions that are perfect with k ≤ m.",
        "Thus P(6) = 1/2.",
        "",
        "In the following table are listed some values of P(m)",
        "   P(5) = 1/1",
        "   P(10) = 1/2",
        "   P(15) = 2/3",
        "   P(20) = 1/2",
        "   P(25) = 1/2",
        "   P(30) = 2/5",
        "   ...",
        "   P(180) = 1/4",
        "   P(185) = 3/13",
        "",
        "",
        "Find the smallest m for which P(m) < 1/12345"
      ]
    },
    {
      "id": "5900f43f1000cf542c50ff51",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 208: Robot Walks",
      "tests": [
        "assert.strictEqual(euler208(), 331951449665644800, 'message: <code>euler208()</code> should return 331951449665644800.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler208() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler208();"
      ],
      "description": [
        "A robot moves in a series of one-fifth circular arcs (72°), with a free choice of a clockwise or an anticlockwise arc for each step, but no turning on the spot.",
        "",
        "One of 70932 possible closed paths of 25 arcs starting northward is",
        "",
        "",
        "",
        "Given that the robot starts facing North, how many journeys of 70 arcs in length can it take that return it, after the final arc, to its starting position?",
        "(Any arc may be traversed multiple times.)"
      ]
    },
    {
      "id": "5900f43e1000cf542c50ff4f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 209: Circular Logic",
      "tests": [
        "assert.strictEqual(euler209(), 15964587728784, 'message: <code>euler209()</code> should return 15964587728784.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler209() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler209();"
      ],
      "description": [
        "A k-input binary truth table is a map from k input bits",
        "(binary digits, 0 [false] or 1 [true]) to 1 output bit. For example, the 2-input binary truth tables for the logical AND and XOR functions are:",
        "",
        "x",
        "y",
        "x AND y000010100111x",
        "y",
        "x XOR y000011101110How many 6-input binary truth tables, τ, satisfy the formula",
        "",
        "τ(a, b, c, d, e, f) AND τ(b, c, d, e, f, a XOR (b AND c)) = 0",
        "for all 6-bit inputs (a, b, c, d, e, f)?"
      ]
    },
    {
      "id": "5900f43e1000cf542c50ff50",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 210: Obtuse Angled Triangles",
      "tests": [
        "assert.strictEqual(euler210(), 1598174770174689500, 'message: <code>euler210()</code> should return 1598174770174689500.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler210() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler210();"
      ],
      "description": [
        "Consider the set S(r) of points (x,y) with integer coordinates satisfying |x| + |y| ≤ r. ",
        "Let O be the point (0,0) and C the point (r/4,r/4). ",
        "Let N(r) be the number of points B in S(r), so that the triangle OBC has an obtuse angle, i.e. the largest angle α satisfies 90°<α<180°.",
        "So, for example, N(4)=24 and N(8)=100.",
        "",
        "What is N(1,000,000,000)?"
      ]
    },
    {
      "id": "5900f43f1000cf542c50ff52",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 211: Divisor Square Sum",
      "tests": [
        "assert.strictEqual(euler211(), 1922364685, 'message: <code>euler211()</code> should return 1922364685.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler211() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler211();"
      ],
      "description": [
        "For a positive integer n, let σ2(n) be the sum of the squares of its divisors. For example,",
        "σ2(10) = 1 + 4 + 25 + 100 = 130.",
        "Find the sum of all n, 0 < n < 64,000,000 such that σ2(n) is a perfect square."
      ]
    },
    {
      "id": "5900f4411000cf542c50ff53",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 212: Combined Volume of Cuboids",
      "tests": [
        "assert.strictEqual(euler212(), 328968937309, 'message: <code>euler212()</code> should return 328968937309.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler212() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler212();"
      ],
      "description": [
        "An axis-aligned cuboid, specified by parameters { (x0,y0,z0), (dx,dy,dz) }, consists of all points (X,Y,Z) such that x0 ≤ X ≤ x0+dx, y0 ≤ Y ≤ y0+dy and z0 ≤ Z ≤ z0+dz.  The volume of the cuboid is the product, dx × dy × dz.  The combined volume of a collection of cuboids is the volume of their union and will be less than the sum of the individual volumes if any cuboids overlap.",
        "",
        "Let C1,...,C50000 be a collection of 50000 axis-aligned cuboids such that Cn has parameters",
        "",
        "x0 = S6n-5 modulo 10000y0 = S6n-4 modulo 10000z0 = S6n-3 modulo 10000dx = 1 + (S6n-2 modulo 399)dy = 1 + (S6n-1 modulo 399)dz = 1 + (S6n modulo 399)",
        "",
        "where S1,...,S300000 come from the \"Lagged Fibonacci Generator\":",
        "",
        "For 1 ≤ k ≤ 55, Sk = [100003 - 200003k + 300007k3]   (modulo 1000000)For 56 ≤ k, Sk = [Sk-24 + Sk-55]   (modulo 1000000)",
        "",
        "Thus, C1 has parameters {(7,53,183),(94,369,56)}, C2 has parameters {(2383,3563,5079),(42,212,344)}, and so on.",
        "",
        "The combined volume of the first 100 cuboids, C1,...,C100, is 723581599.",
        "",
        "What is the combined volume of all 50000 cuboids, C1,...,C50000 ?"
      ]
    },
    {
      "id": "5900f4411000cf542c50ff54",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 213: Flea Circus",
      "tests": [
        "assert.strictEqual(euler213(), 330.721154, 'message: <code>euler213()</code> should return 330.721154.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler213() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler213();"
      ],
      "description": [
        "A 30×30 grid of squares contains 900 fleas, initially one flea per square.",
        "When a bell is rung, each flea jumps to an adjacent square at random (usually 4 possibilities, except for fleas on the edge of the grid or at the corners).",
        "",
        "What is the expected number of unoccupied squares after 50 rings of the bell? Give your answer rounded to six decimal places."
      ]
    },
    {
      "id": "5900f4421000cf542c50ff55",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 214: Totient Chains",
      "tests": [
        "assert.strictEqual(euler214(), 1677366278943, 'message: <code>euler214()</code> should return 1677366278943.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler214() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler214();"
      ],
      "description": [
        "Let φ be Euler's totient function, i.e. for a natural number n,",
        "φ(n) is the number of k, 1 ≤ k ≤ n, for which gcd(k,n) = 1.",
        "",
        "By iterating φ, each positive integer generates a decreasing chain of numbers ending in 1.",
        "E.g. if we start with 5 the sequence 5,4,2,1 is generated.",
        "Here is a listing of all chains with length 4:",
        "",
        "",
        "5,4,2,1",
        "7,6,2,1",
        "8,4,2,1",
        "9,6,2,1",
        "10,4,2,1",
        "12,4,2,1",
        "14,6,2,1",
        "18,6,2,1",
        "",
        "Only two of these chains start with a prime, their sum is 12.",
        "",
        "What is the sum of all primes less than 40000000 which generate a chain of length 25?"
      ]
    },
    {
      "id": "5900f4431000cf542c50ff56",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 215: Crack-free Walls",
      "tests": [
        "assert.strictEqual(euler215(), 806844323190414, 'message: <code>euler215()</code> should return 806844323190414.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler215() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler215();"
      ],
      "description": [
        "Consider the problem of building a wall out of 2×1 and 3×1 bricks (horizontal×vertical dimensions) such that, for extra strength, the gaps between horizontally-adjacent bricks never line up in consecutive layers, i.e. never form a \"running crack\".",
        "",
        "For example, the following 9×3 wall is not acceptable due to the running crack shown in red:",
        "",
        "",
        "",
        "",
        "There are eight ways of forming a crack-free 9×3 wall, written W(9,3) = 8.",
        "",
        "Calculate W(32,10)."
      ]
    },
    {
      "id": "5900f4451000cf542c50ff57",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 216: Investigating the primality of numbers of the form 2n2-1",
      "tests": [
        "assert.strictEqual(euler216(), 5437849, 'message: <code>euler216()</code> should return 5437849.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler216() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler216();"
      ],
      "description": [
        "Consider numbers t(n) of the form t(n) = 2n2-1 with n > 1.",
        "The first such numbers are 7, 17, 31, 49, 71, 97, 127 and 161.",
        "It turns out that only 49 = 7*7 and 161 = 7*23 are not prime.",
        "For n ≤ 10000 there are 2202 numbers t(n)  that are prime.",
        "",
        "How many numbers t(n) are prime for n ≤ 50,000,000 ?"
      ]
    },
    {
      "id": "5900f4461000cf542c50ff58",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 217: Balanced Numbers",
      "tests": [
        "assert.strictEqual(euler217(), 6273134, 'message: <code>euler217()</code> should return 6273134.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler217() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler217();"
      ],
      "description": [
        "A positive integer with k (decimal) digits is called balanced if its first ⌈k/2⌉ digits sum to the same value as its last ⌈k/2⌉ digits, where ⌈x⌉, pronounced ceiling of x, is the smallest integer ≥ x, thus ⌈π⌉ = 4 and ⌈5⌉ = 5.",
        "So, for example, all palindromes are balanced, as is 13722.",
        "Let T(n) be the sum of all balanced numbers less than 10n. ",
        "Thus: T(1) = 45, T(2) = 540 and T(5) = 334795890. ",
        "Find T(47) mod 315"
      ]
    },
    {
      "id": "5900f4461000cf542c50ff59",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 218: Perfect right-angled triangles",
      "tests": [
        "assert.strictEqual(euler218(), 0, 'message: <code>euler218()</code> should return 0.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler218() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler218();"
      ],
      "description": [
        "Consider the right angled triangle with sides a=7, b=24 and c=25.",
        "The area of this triangle is 84, which is divisible by the perfect numbers 6 and 28.",
        "Moreover it is a primitive right angled triangle as gcd(a,b)=1 and gcd(b,c)=1.",
        "Also c is a perfect square.",
        "",
        "We will call a right angled triangle perfect if",
        "-it is a primitive right angled triangle",
        "-its hypotenuse is a perfect square",
        "",
        "We will call a right angled triangle super-perfect if",
        "-it is a perfect right angled triangle and",
        "-its area is a multiple of the perfect numbers 6 and 28.",
        "",
        "",
        "How many perfect right-angled triangles with c≤1016 exist that are not super-perfect?"
      ]
    },
    {
      "id": "5900f4481000cf542c50ff5a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 219: Skew-cost coding",
      "tests": [
        "assert.strictEqual(euler219(), 64564225042, 'message: <code>euler219()</code> should return 64564225042.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler219() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler219();"
      ],
      "description": [
        "Let A and B be bit strings (sequences of 0's and 1's).",
        "If A is equal to the leftmost length(A) bits of B, then A is said to be a prefix of B.",
        "For example, 00110 is a prefix of 001101001, but not of 00111 or 100110.",
        "",
        "A prefix-free code of size n is a collection of n distinct bit strings such that no string is a prefix of any other.  For example, this is a prefix-free code of size 6:",
        "",
        "0000, 0001, 001, 01, 10, 11",
        "",
        "Now suppose that it costs one penny to transmit a '0' bit, but four pence to transmit a '1'.",
        "Then the total cost of the prefix-free code shown above is 35 pence, which happens to be the cheapest possible for the skewed pricing scheme in question.",
        "In short, we write Cost(6) = 35.",
        "",
        "What is Cost(109) ?"
      ]
    },
    {
      "id": "5900f4481000cf542c50ff5b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 220: Heighway Dragon",
      "tests": [
        "assert.strictEqual(euler220(), 139776, 963904, 'message: <code>euler220()</code> should return 139776, 963904.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler220() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler220();"
      ],
      "description": [
        "Let D0 be the two-letter string \"Fa\".  For n≥1, derive Dn from Dn-1 by the string-rewriting rules:",
        "",
        "\"a\" → \"aRbFR\"",
        "\"b\" → \"LFaLb\"",
        "",
        "Thus, D0 = \"Fa\", D1 = \"FaRbFR\", D2 = \"FaRbFRRLFaLbFR\", and so on.",
        "",
        "These strings can be interpreted as instructions to a computer graphics program, with \"F\" meaning \"draw forward one unit\", \"L\" meaning \"turn left 90 degrees\", \"R\" meaning \"turn right 90 degrees\", and \"a\" and \"b\" being ignored.  The initial position of the computer cursor is (0,0), pointing up towards (0,1).",
        "",
        "Then Dn is an exotic drawing known as the Heighway Dragon of order n.  For example, D10 is shown below; counting each \"F\" as one step, the highlighted spot at (18,16) is the position reached after 500 steps.",
        "",
        "",
        "",
        "",
        "What is the position of the cursor after 1012 steps in D50 ?",
        "Give your answer in the form x,y with no spaces."
      ]
    },
    {
      "id": "5900f4491000cf542c50ff5c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 221: Alexandrian Integers",
      "tests": [
        "assert.strictEqual(euler221(), 1884161251122450, 'message: <code>euler221()</code> should return 1884161251122450.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler221() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler221();"
      ],
      "description": [
        "We shall call a positive integer A an \"Alexandrian integer\", if there exist integers p, q, r such that:",
        "",
        "",
        "      A = p · q · r    and  ",
        "   ",
        "   ",
        "      1A",
        "   =",
        "   ",
        "      1p",
        "   +",
        "   ",
        "      1q",
        "   +",
        "   ",
        "      1r",
        "For example, 630 is an Alexandrian integer (p = 5, q = −7, r = −18).",
        "In fact, 630 is the 6th Alexandrian integer,  the first 6 Alexandrian integers being: 6, 42, 120, 156, 420 and 630.",
        "",
        "Find the 150000th Alexandrian integer."
      ]
    },
    {
      "id": "5900f44b1000cf542c50ff5d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 222: Sphere Packing",
      "tests": [
        "assert.strictEqual(euler222(), 1590933, 'message: <code>euler222()</code> should return 1590933.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler222() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler222();"
      ],
      "description": [
        "What is the length of the shortest pipe, of internal radius 50mm, that can fully contain 21 balls of radii 30mm, 31mm, ..., 50mm?",
        "",
        "Give your answer in micrometres (10-6 m) rounded to the nearest integer."
      ]
    },
    {
      "id": "5900f44b1000cf542c50ff5e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 223: Almost right-angled triangles I",
      "tests": [
        "assert.strictEqual(euler223(), 61614848, 'message: <code>euler223()</code> should return 61614848.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler223() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler223();"
      ],
      "description": [
        "Let us call an integer sided triangle with sides a ≤ b ≤ c barely acute if the sides satisfy a2 + b2 = c2 + 1.",
        "",
        "How many barely acute triangles are there with perimeter ≤ 25,000,000?"
      ]
    },
    {
      "id": "5900f44e1000cf542c50ff5f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 224: Almost right-angled triangles II",
      "tests": [
        "assert.strictEqual(euler224(), 4137330, 'message: <code>euler224()</code> should return 4137330.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler224() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler224();"
      ],
      "description": [
        "Let us call an integer sided triangle with sides a ≤ b ≤ c barely obtuse if the sides satisfy a2 + b2 = c2 - 1.",
        "",
        "How many barely obtuse triangles are there with perimeter ≤ 75,000,000?"
      ]
    },
    {
      "id": "5900f44e1000cf542c50ff60",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 225: Tribonacci non-divisors",
      "tests": [
        "assert.strictEqual(euler225(), 2009, 'message: <code>euler225()</code> should return 2009.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler225() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler225();"
      ],
      "description": [
        "The sequence 1, 1, 1, 3, 5, 9, 17, 31, 57, 105, 193, 355, 653, 1201 ...",
        "is defined by T1 = T2 = T3 = 1 and Tn = Tn-1 + Tn-2 + Tn-3.",
        "",
        "",
        "It can be shown that 27 does not divide any terms of this sequence.In fact, 27 is the first odd number with this property.",
        "",
        "Find the 124th odd number that does not divide any terms of the above sequence."
      ]
    },
    {
      "id": "5900f4511000cf542c50ff62",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 226: A Scoop of Blancmange",
      "tests": [
        "assert.strictEqual(euler226(), 0.11316017, 'message: <code>euler226()</code> should return 0.11316017.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler226() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler226();"
      ],
      "description": [
        "The blancmange curve is the set of points (x,y) such that 0 ≤ x ≤ 1 and  ,where s(x) = the distance from x to the nearest integer.",
        "",
        "The area under the blancmange curve is equal to ½, shown in pink in the diagram below.",
        "",
        "",
        "",
        "",
        "Let C be the circle with centre (¼,½) and radius ¼, shown in black in the diagram.",
        "",
        "What area under the blancmange curve is enclosed by C?Give your answer rounded to eight decimal places in the form 0.abcdefgh"
      ]
    },
    {
      "id": "5900f44f1000cf542c50ff61",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 227: The Chase",
      "tests": [
        "assert.strictEqual(euler227(), 3780.618622, 'message: <code>euler227()</code> should return 3780.618622.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler227() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler227();"
      ],
      "description": [
        "\"The Chase\" is a game played with two dice and an even number of players.",
        "",
        "The players sit around a table; the game begins with two opposite players having one die each. On each turn, the two players with a die roll it.",
        "If a player rolls a 1, he passes the die to his neighbour on the left; if he rolls a 6, he passes the die to his neighbour on the right; otherwise, he keeps the die for the next turn.",
        "The game ends when one player has both dice after they have been rolled and passed; that player has then lost.",
        "",
        "In a game with 100 players, what is the expected number of turns the game lasts?",
        "Give your answer rounded to ten significant digits."
      ]
    },
    {
      "id": "5900f4511000cf542c50ff63",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 228: Minkowski Sums",
      "tests": [
        "assert.strictEqual(euler228(), 86226, 'message: <code>euler228()</code> should return 86226.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler228() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler228();"
      ],
      "description": [
        "Let Sn be the regular n-sided polygon – or shape – whose vertices ",
        "",
        "vk (k = 1,2,…,n) have coordinates:",
        "",
        "    xk   =  ",
        "        cos( 2k-1/n ×180° )",
        "  ",
        "    yk   =  ",
        "        sin( 2k-1/n ×180° )",
        "  Each Sn is to be interpreted as a filled shape consisting of all points on the perimeter and in the interior.",
        "",
        "The Minkowski sum, S+T, of two shapes S and T is the result of ",
        "",
        "adding every point in S to every point in T, where point addition is performed coordinate-wise: ",
        "",
        "(u, v) + (x, y) = (u+x, v+y).",
        "",
        "For example, the sum of S3 and S4 is the six-sided shape shown in pink below:",
        "",
        "",
        "",
        "",
        "How many sides does S1864 + S1865 + … + S1909 have?"
      ]
    },
    {
      "id": "5900f4521000cf542c50ff64",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 229: Four Representations using Squares",
      "tests": [
        "assert.strictEqual(euler229(), 11325263, 'message: <code>euler229()</code> should return 11325263.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler229() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler229();"
      ],
      "description": [
        "Consider the number 3600. It is very special, because",
        "",
        "3600 = 482 +     362",
        "3600 = 202 + 2×402",
        "3600 = 302 + 3×302",
        "3600 = 452 + 7×152",
        "",
        "Similarly, we find that 88201 = 992 + 2802 = 2872 + 2×542 = 2832 + 3×522 = 1972 + 7×842.",
        "",
        "In 1747, Euler proved which numbers are representable as a sum of two squares.",
        "We are interested in the numbers n which admit representations of all of the following four types:",
        "",
        "n = a12 +   b12n = a22 + 2 b22n = a32 + 3 b32n = a72 + 7 b72,",
        "",
        "where the ak and bk are positive integers.",
        "",
        "There are 75373 such numbers that do not exceed 107.",
        "",
        "How many such numbers are there that do not exceed 2×109?"
      ]
    },
    {
      "id": "5900f4531000cf542c50ff65",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 230: Fibonacci Words",
      "tests": [
        "assert.strictEqual(euler230(), 850481152593119200, 'message: <code>euler230()</code> should return 850481152593119200.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler230() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler230();"
      ],
      "description": [
        "For any two strings of digits, A and B, we define FA,B to be the sequence (A,B,AB,BAB,ABBAB,...) in which each term is the concatenation of the previous two.",
        "",
        "Further, we define DA,B(n) to be the nth digit in the first term of FA,B that contains at least n digits.",
        "",
        "Example:",
        "",
        "Let A=1415926535, B=8979323846. We wish to find DA,B(35), say.",
        "",
        "The first few terms of FA,B are:",
        "1415926535",
        "8979323846",
        "14159265358979323846",
        "897932384614159265358979323846",
        "14159265358979323846897932384614159265358979323846",
        "",
        "Then DA,B(35) is the 35th digit in the fifth term, which is 9.",
        "",
        "Now we use for A the first 100 digits of π behind the decimal point:",
        "14159265358979323846264338327950288419716939937510 ",
        "58209749445923078164062862089986280348253421170679 ",
        "",
        "and for B the next hundred digits:",
        "",
        "82148086513282306647093844609550582231725359408128 ",
        "48111745028410270193852110555964462294895493038196 .",
        "",
        "Find ∑n = 0,1,...,17   10n× DA,B((127+19n)×7n) ."
      ]
    },
    {
      "id": "5900f4531000cf542c50ff66",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 231: The prime factorisation of binomial coefficients",
      "tests": [
        "assert.strictEqual(euler231(), 7526965179680, 'message: <code>euler231()</code> should return 7526965179680.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler231() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler231();"
      ],
      "description": [
        "The binomial coefficient 10C3 = 120.",
        "120 = 23 × 3 × 5 = 2 × 2 × 2 × 3 × 5, and 2 + 2 + 2 + 3 + 5 = 14.",
        "So the sum of the terms in the prime factorisation of 10C3 is 14.",
        "",
        "Find the sum of the terms in the prime factorisation of 20000000C15000000."
      ]
    },
    {
      "id": "5900f4551000cf542c50ff67",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 232: The Race",
      "tests": [
        "assert.strictEqual(euler232(), 0.83648556, 'message: <code>euler232()</code> should return 0.83648556.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler232() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler232();"
      ],
      "description": [
        "Two players share an unbiased coin and take it in turns to play \"The Race\". On Player 1's turn, he tosses the coin once: if it comes up Heads, he scores one point; if it comes up Tails, he scores nothing. On Player 2's turn, she chooses a positive integer T and tosses the coin T times: if it comes up all Heads, she scores 2T-1 points; otherwise, she scores nothing. Player 1 goes first. The winner is the first to 100 or more points.",
        "",
        "On each turn Player 2 selects the number, T, of coin tosses that maximises the probability of her winning.",
        "",
        "What is the probability that Player 2 wins?",
        "",
        "Give your answer rounded to eight decimal places in the form 0.abcdefgh ."
      ]
    },
    {
      "id": "5900f4551000cf542c50ff68",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 233: Lattice points on a circle",
      "tests": [
        "assert.strictEqual(euler233(), 271204031455541300, 'message: <code>euler233()</code> should return 271204031455541300.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler233() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler233();"
      ],
      "description": [
        "Let f(N) be the number of points with integer coordinates that are on a circle passing through (0,0), (N,0),(0,N), and (N,N).",
        "It can be shown that f(10000) = 36.",
        "",
        "What is the sum of all positive integers N ≤ 1011 such that f(N) = 420 ?"
      ]
    },
    {
      "id": "5900f4571000cf542c50ff69",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 234: Semidivisible numbers",
      "tests": [
        "assert.strictEqual(euler234(), 1259187438574927000, 'message: <code>euler234()</code> should return 1259187438574927000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler234() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler234();"
      ],
      "description": [
        "For an integer n ≥ 4, we define the lower prime square root of n, denoted by lps(n), as the largest prime ≤ √n and the upper prime square root of n, ups(n), as the smallest prime ≥ √n.",
        "So, for example, lps(4) = 2 = ups(4), lps(1000) = 31, ups(1000) = 37.",
        "Let us call an integer n ≥ 4 semidivisible, if one of lps(n) and ups(n) divides n, but not both.",
        "",
        "The sum of the semidivisible numbers not exceeding 15 is 30, the numbers are 8, 10 and 12. 15 is not semidivisible because it is a multiple of both lps(15) = 3 and ups(15) = 5.",
        "As a further example, the sum of the 92 semidivisible numbers up to 1000 is 34825.",
        "",
        "What is the sum of all semidivisible numbers not exceeding 999966663333 ?"
      ]
    },
    {
      "id": "5900f4571000cf542c50ff6a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 235: An Arithmetic Geometric sequence",
      "tests": [
        "assert.strictEqual(euler235(), 1.002322108633, 'message: <code>euler235()</code> should return 1.002322108633.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler235() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler235();"
      ],
      "description": [
        "Given is the arithmetic-geometric sequence u(k) = (900-3k)rk-1.",
        "Let s(n) = Σk=1...nu(k).",
        "",
        "",
        "Find the value of r for which s(5000) = -600,000,000,000.",
        "",
        "",
        "Give your answer rounded to 12 places behind the decimal point."
      ]
    },
    {
      "id": "5900f4591000cf542c50ff6b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 236: Luxury Hampers",
      "tests": [
        "assert.strictEqual(euler236(), 123 / 59, 'message: <code>euler236()</code> should return 123 / 59.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler236() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler236();"
      ],
      "description": [
        "Suppliers 'A' and 'B' provided the following numbers of products for the luxury hamper market:",
        "",
        "Product'A''B'Beluga Caviar5248640Christmas Cake13121888Gammon Joint26243776Vintage Port57603776Champagne Truffles39365664",
        "",
        "Although the suppliers try very hard to ship their goods in perfect condition, there is inevitably some spoilage - i.e. products gone bad.",
        "",
        "The suppliers compare their performance using two types of statistic:The five per-product spoilage rates for each supplier are equal to the number of products gone bad divided by the number of products supplied, for each of the five products in turn.",
        "  The overall spoilage rate for each supplier is equal to the total number of products gone bad divided by the total number of products provided by that supplier.To their surprise, the suppliers found that each of the five per-product spoilage rates was worse (higher) for 'B' than for 'A' by the same factor (ratio of spoilage rates), m>1; and yet, paradoxically, the overall spoilage rate was worse for 'A' than for 'B', also by a factor of m.",
        "",
        "There are thirty-five m>1 for which this surprising result could have occurred, the smallest of which is 1476/1475.",
        "",
        "What's the largest possible value of m?",
        "Give your answer as a fraction reduced to its lowest terms, in the form u/v."
      ]
    },
    {
      "id": "5900f4591000cf542c50ff6c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 237: Tours on a 4 x n playing board",
      "tests": [
        "assert.strictEqual(euler237(), 15836928, 'message: <code>euler237()</code> should return 15836928.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler237() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler237();"
      ],
      "description": [
        "Let T(n) be the number of tours over a 4 × n playing board such that:",
        "The tour starts in the top left corner.",
        "The tour consists of moves that are up, down, left, or right one square.",
        "The tour visits each square exactly once.",
        "The tour ends in the bottom left corner.",
        "The diagram shows one tour over a 4 × 10 board:",
        "",
        "",
        "",
        "",
        "T(10) is 2329. What is T(1012) modulo 108?"
      ]
    },
    {
      "id": "5900f45b1000cf542c50ff6d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 238: Infinite string tour",
      "tests": [
        "assert.strictEqual(euler238(), 9922545104535660, 'message: <code>euler238()</code> should return 9922545104535660.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler238() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler238();"
      ],
      "description": [
        "Create a sequence of numbers using the \"Blum Blum Shub\" pseudo-random number generator:",
        "",
        "s0",
        "    =",
        "    14025256",
        "  sn+1",
        "    =",
        "    sn2 mod 20300713",
        "  ",
        "",
        "Concatenate these numbers  s0s1s2… to create a string w of infinite length.",
        "Then, w = 14025256741014958470038053646…",
        "",
        "For a positive integer k, if no substring of w exists with a sum of digits equal to k, p(k) is defined to be zero. If at least one substring of w exists with a sum of digits equal to k, we define p(k) = z, where z is the starting position of the earliest such substring.",
        "",
        "For instance:",
        "",
        "The substrings 1, 14, 1402, … ",
        "with respective sums of digits equal to 1, 5, 7, …",
        "start at position 1, hence p(1) = p(5) = p(7) = … = 1.",
        "",
        "The substrings 4, 402, 4025, …",
        "with respective sums of digits equal to 4, 6, 11, …",
        "start at position 2, hence p(4) = p(6) = p(11) = … = 2.",
        "",
        "The substrings 02, 0252, …",
        "with respective sums of digits equal to 2, 9, …",
        "start at position 3, hence p(2) = p(9) = … = 3.",
        "",
        "Note that substring 025 starting at position 3, has a sum of digits equal to 7, but there was an earlier substring (starting at position 1) with a sum of digits equal to 7, so p(7) = 1, not 3.",
        "",
        "We can verify that, for 0 < k ≤ 103, ∑ p(k) = 4742.",
        "",
        "Find ∑ p(k), for 0 < k ≤ 2·1015."
      ]
    },
    {
      "id": "5900f45c1000cf542c50ff6e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 239: Twenty-two Foolish Primes",
      "tests": [
        "assert.strictEqual(euler239(), 0.001887854841, 'message: <code>euler239()</code> should return 0.001887854841.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler239() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler239();"
      ],
      "description": [
        "A set of disks numbered 1 through 100 are placed in a line in random order.",
        "",
        "What is the probability that we have a partial derangement such that exactly 22 prime number discs are found away from their natural positions?",
        "(Any number of non-prime disks may also be found in or out of their natural positions.)",
        "",
        "Give your answer rounded to 12 places behind the decimal point in the form 0.abcdefghijkl."
      ]
    },
    {
      "id": "5900f45d1000cf542c50ff6f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 240: Top Dice",
      "tests": [
        "assert.strictEqual(euler240(), 7448717393364182000, 'message: <code>euler240()</code> should return 7448717393364182000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler240() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler240();"
      ],
      "description": [
        "There are 1111 ways in which five 6-sided dice (sides numbered 1 to 6) can be rolled so that the top three sum to 15. Some examples are:",
        "",
        "",
        "D1,D2,D3,D4,D5 = 4,3,6,3,5",
        "",
        "D1,D2,D3,D4,D5 = 4,3,3,5,6",
        "",
        "D1,D2,D3,D4,D5 = 3,3,3,6,6",
        "",
        "D1,D2,D3,D4,D5 = 6,6,3,3,3",
        "",
        "In how many ways can twenty 12-sided dice (sides numbered 1 to 12) be rolled so that the top ten sum to 70?"
      ]
    },
    {
      "id": "5900f45d1000cf542c50ff70",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 241: Perfection Quotients",
      "tests": [
        "assert.strictEqual(euler241(), 482316491800641150, 'message: <code>euler241()</code> should return 482316491800641150.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler241() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler241();"
      ],
      "description": [
        "For a positive integer n, let σ(n) be the sum of all divisors of n, so e.g. σ(6) = 1 + 2 + 3 + 6 = 12.",
        "",
        "",
        "A perfect number, as you probably know, is a number with σ(n) = 2n.",
        "",
        "Let us define the perfection quotient of a positive integer asp(n)= ",
        "σ(n)n",
        ".",
        "Find the sum of all positive integers n ≤ 1018 for which p(n) has the form k + 1⁄2, where k is an integer."
      ]
    },
    {
      "id": "5900f45f1000cf542c50ff71",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 242: Odd Triplets",
      "tests": [
        "assert.strictEqual(euler242(), 997104142249036700, 'message: <code>euler242()</code> should return 997104142249036700.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler242() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler242();"
      ],
      "description": [
        "Given the set {1,2,...,n}, we define f(n,k) as the number of its k-element subsets with an odd sum of elements. For example, f(5,3) = 4, since the set {1,2,3,4,5} has four 3-element subsets having an odd sum of elements, i.e.: {1,2,4}, {1,3,5}, {2,3,4} and {2,4,5}.",
        "",
        "When all three values n, k and f(n,k) are odd, we say that they make ",
        "an odd-triplet [n,k,f(n,k)].",
        "",
        "There are exactly five odd-triplets with n ≤ 10, namely:",
        "[1,1,f(1,1) = 1], [5,1,f(5,1) = 3], [5,5,f(5,5) = 1], [9,1,f(9,1) = 5] and [9,9,f(9,9) = 1].",
        "",
        "How many odd-triplets are there with n ≤ 1012 ?"
      ]
    },
    {
      "id": "5900f4601000cf542c50ff73",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 243: Resilience",
      "tests": [
        "assert.strictEqual(euler243(), 892371480, 'message: <code>euler243()</code> should return 892371480.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler243() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler243();"
      ],
      "description": [
        "A positive fraction whose numerator is less than its denominator is called a proper fraction.",
        "For any denominator, d, there will be d−1 proper fractions; for example, with d = 12:1/12 , 2/12 , 3/12 , 4/12 , 5/12 , 6/12 , 7/12 , 8/12 , 9/12 , 10/12 , 11/12 .",
        "",
        "",
        "We shall call a fraction that cannot be cancelled down a resilient fraction.",
        "Furthermore we shall define the resilience of a denominator, R(d), to be the ratio of its proper fractions that are resilient; for example, R(12) = 4/11 .",
        "In fact, d = 12 is the smallest denominator having a resilience R(d) < 4/10 .",
        "",
        "Find the smallest denominator d, having a resilience R(d) < 15499/94744 ."
      ]
    },
    {
      "id": "5900f4601000cf542c50ff72",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 244: Sliders",
      "tests": [
        "assert.strictEqual(euler244(), 96356848, 'message: <code>euler244()</code> should return 96356848.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler244() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler244();"
      ],
      "description": [
        "You probably know the game Fifteen Puzzle. Here, instead of numbered tiles, we have seven red tiles and eight blue tiles.",
        "A move is denoted by the uppercase initial of the direction (Left, Right, Up, Down) in which the tile is slid, e.g. starting from configuration (S), by the sequence LULUR we reach the configuration (E):",
        "",
        "(S), (E)",
        "",
        "",
        "For each path, its checksum is calculated by (pseudocode):",
        "",
        "checksum = 0",
        "checksum = (checksum × 243 + m1) mod 100 000 007",
        "checksum = (checksum × 243 + m2) mod 100 000 007",
        "   …",
        "checksum = (checksum × 243 + mn) mod 100 000 007",
        "where mk is the ASCII value of the kth letter in the move sequence and the ASCII values for the moves are:",
        "",
        "",
        "L76R82U85D68",
        "",
        "For the sequence LULUR given above, the checksum would be 19761398.",
        "Now, starting from configuration (S),",
        "find all shortest ways to reach configuration (T).",
        "",
        "(S), (T)",
        "",
        "",
        "What is the sum of all checksums for the paths having the minimal length?"
      ]
    },
    {
      "id": "5900f4621000cf542c50ff74",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 245: Coresilience",
      "tests": [
        "assert.strictEqual(euler245(), 288084712410001, 'message: <code>euler245()</code> should return 288084712410001.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler245() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler245();"
      ],
      "description": [
        "We shall call a fraction that cannot be cancelled down a resilient fraction. Furthermore we shall define the resilience of a denominator, R(d), to be the ratio of its proper fractions that are resilient; for example, R(12) = 4⁄11.",
        "",
        "The resilience of a number d > 1 is then",
        "φ(d)d − 1",
        ", where φ is Euler's totient function.",
        "We further define the coresilience of a number n > 1 as C(n)= ",
        "n − φ(n)n − 1.",
        "The coresilience of a prime p is C(p)",
        "= ",
        "1p − 1.",
        "Find the sum of all composite integers 1 < n ≤ 2×1011, for which C(n) is a unit fraction."
      ]
    },
    {
      "id": "5900f4621000cf542c50ff75",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 246: Tangents to an ellipse",
      "tests": [
        "assert.strictEqual(euler246(), 810834388, 'message: <code>euler246()</code> should return 810834388.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler246() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler246();"
      ],
      "description": [
        "A definition for an ellipse is:",
        "Given a circle c with centre M and radius r and a point G such that d(G,M)<r, the locus of the points that are equidistant from c and G form an ellipse.",
        "",
        "The construction of the points of the ellipse is shown below.",
        "",
        "",
        "",
        "",
        "",
        "Given are the points M(-2000,1500) and G(8000,1500). ",
        "Given is also the circle c with centre M and radius 15000.",
        "The locus of the points that are equidistant from G and c form an ellipse e.",
        "From a point P outside e the two tangents t1 and t2 to the ellipse are drawn.",
        "Let the points where t1 and t2 touch the ellipse be R and S.",
        "",
        "",
        "",
        "",
        "For how many lattice points P is angle RPS greater than 45 degrees?"
      ]
    },
    {
      "id": "5900f4641000cf542c50ff76",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 247: Squares under a hyperbola",
      "tests": [
        "assert.strictEqual(euler247(), 782252, 'message: <code>euler247()</code> should return 782252.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler247() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler247();"
      ],
      "description": [
        "Consider the region constrained by 1 ≤ x and 0 ≤ y ≤ 1/x.",
        "",
        "Let S1 be the largest square that can fit under the curve.",
        "Let S2 be the largest square that fits in the remaining area, and so on. ",
        "Let the index of Sn be the pair (left, below) indicating the number of squares to the left of Sn and the number of squares below Sn.",
        "",
        "",
        "",
        "",
        "The diagram shows some such squares labelled by number. ",
        "S2 has one square to its left and none below, so the index of S2 is (1,0).",
        "It can be seen that the index of S32 is (1,1) as is the index of S50. ",
        "50 is the largest n for which the index of Sn is (1,1).",
        "",
        "",
        "What is the largest n for which the index of Sn is (3,3)?"
      ]
    },
    {
      "id": "5900f4651000cf542c50ff77",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 248: Numbers for which Euler’s totient function equals 13!",
      "tests": [
        "assert.strictEqual(euler248(), 23507044290, 'message: <code>euler248()</code> should return 23507044290.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler248() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler248();"
      ],
      "description": [
        "The first number n for which φ(n)=13! is 6227180929.",
        "Find the 150,000th such number."
      ]
    },
    {
      "id": "5900f4671000cf542c50ff79",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 249: Prime Subset Sums",
      "tests": [
        "assert.strictEqual(euler249(), 9275262564250418, 'message: <code>euler249()</code> should return 9275262564250418.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler249() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler249();"
      ],
      "description": [
        "Let S = {2, 3, 5, ..., 4999} be the set of prime numbers less than 5000.",
        "Find the number of subsets of S, the sum of whose elements is a prime number.",
        "Enter the rightmost 16 digits as your answer."
      ]
    },
    {
      "id": "5900f4661000cf542c50ff78",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 250: 250250",
      "tests": [
        "assert.strictEqual(euler250(), 1425480602091519, 'message: <code>euler250()</code> should return 1425480602091519.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler250() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler250();"
      ],
      "description": [
        "Find the number of non-empty subsets of {11, 22, 33,..., 250250250250}, the sum of whose elements is divisible by 250. Enter the rightmost 16 digits as your answer."
      ]
    },
    {
      "id": "5900f4671000cf542c50ff7a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 251: Cardano Triplets",
      "tests": [
        "assert.strictEqual(euler251(), 18946051, 'message: <code>euler251()</code> should return 18946051.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler251() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler251();"
      ],
      "description": [
        "A triplet of positive integers (a,b,c) is called a Cardano Triplet if it satisfies the condition:",
        "",
        "",
        "",
        "For example, (2,1,5) is a Cardano Triplet.",
        "",
        "",
        "There exist 149 Cardano Triplets for which a+b+c ≤ 1000.",
        "",
        "",
        "Find how many Cardano Triplets exist such that a+b+c ≤ 110,000,000."
      ]
    },
    {
      "id": "5900f4691000cf542c50ff7b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 252: Convex Holes",
      "tests": [
        "assert.strictEqual(euler252(), 104924, 'message: <code>euler252()</code> should return 104924.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler252() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler252();"
      ],
      "description": [
        "Given a set of points on a plane, we define a convex hole to be a convex polygon having as vertices any of the given points and not containing any of the given points in its interior (in addition to the vertices, other given points may lie on the perimeter of the polygon). ",
        "",
        "",
        "As an example, the image below shows a set of twenty points and a few such convex holes. ",
        "The convex hole shown as a red heptagon has an area equal to 1049694.5 square units, which is the highest possible area for a convex hole on the given set of points.",
        "",
        "",
        "",
        "",
        "For our example, we used the first 20 points (T2k−1, T2k), for k = 1,2,…,20, produced with the pseudo-random number generator:",
        "",
        "S0",
        "    = ",
        "    290797 ",
        "  Sn+1",
        "    = ",
        "    Sn2 mod 50515093",
        "  Tn",
        "    = ",
        "    ( Sn mod 2000 ) − 1000 ",
        "  ",
        "",
        "",
        "i.e. (527, 144), (−488, 732), (−454, −947), …",
        "",
        "",
        "What is the maximum area for a convex hole on the set containing the first 500 points in the pseudo-random sequence? Specify your answer including one digit after the decimal point."
      ]
    },
    {
      "id": "5900f4691000cf542c50ff7c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 253: Tidying up",
      "tests": [
        "assert.strictEqual(euler253(), 11.492847, 'message: <code>euler253()</code> should return 11.492847.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler253() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler253();"
      ],
      "description": [
        "A small child has a “number caterpillar” consisting of forty jigsaw pieces, each with one number on it, which, when connected together in a line, reveal the numbers 1 to 40 in order.",
        "",
        "Every night, the child's father has to pick up the pieces of the caterpillar that have been scattered across the play room. He picks up the pieces at random and places them in the correct order. As the caterpillar is built up in this way, it forms distinct segments that gradually merge together. The number of segments starts at zero (no pieces placed), generally increases up to about eleven or twelve, then tends to drop again before finishing at a single segment (all pieces placed).",
        "",
        "For example:",
        "",
        "Piece Placed",
        "Segments So Far121422936434554354……",
        "",
        "Let M be the maximum number of segments encountered during a random tidy-up of the caterpillar.",
        "For a caterpillar of ten pieces, the number of possibilities for each M is",
        "",
        "M",
        "Possibilities1512      2250912      31815264      41418112      5144000      ",
        "",
        "so the most likely value of M is 3 and the average value is 385643⁄113400 = 3.400732, rounded to six decimal places.",
        "",
        "The most likely value of M for a forty-piece caterpillar is 11; but what is the average value of M?",
        "Give your answer rounded to six decimal places."
      ]
    },
    {
      "id": "5900f46b1000cf542c50ff7d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 254: Sums of Digit Factorials",
      "tests": [
        "assert.strictEqual(euler254(), 8184523820510, 'message: <code>euler254()</code> should return 8184523820510.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler254() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler254();"
      ],
      "description": [
        "Define f(n) as the sum of the factorials of the digits of n. For example, f(342) = 3! + 4! + 2! = 32.",
        "",
        "Define sf(n) as the sum of the digits of f(n). So sf(342) = 3 + 2 = 5.",
        "",
        "Define g(i) to be the smallest positive integer n such that sf(n) = i. Though sf(342) is 5, sf(25) is also 5, and it can be verified that g(5) is 25.",
        "",
        "Define sg(i) as the sum of the digits of g(i). So sg(5) = 2 + 5 = 7.",
        "",
        "Further, it can be verified that g(20) is 267 and ∑ sg(i) for 1 ≤ i ≤ 20 is 156.",
        "",
        "What is ∑ sg(i) for 1 ≤ i ≤ 150?"
      ]
    },
    {
      "id": "5900f46d1000cf542c50ff7f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 255: Rounded Square Roots",
      "tests": [
        "assert.strictEqual(euler255(), 4.447401118, 'message: <code>euler255()</code> should return 4.447401118.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler255() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler255();"
      ],
      "description": [
        "We define the rounded-square-root of a positive integer n as the square root of n rounded to the nearest integer.",
        "",
        "The following procedure (essentially Heron's method adapted to integer arithmetic) finds the rounded-square-root of n:",
        "Let d be the number of digits of the number n.",
        "If d is odd, set x0 = 2×10(d-1)⁄2.",
        "If d is even, set x0 = 7×10(d-2)⁄2.",
        "Repeat:",
        "",
        "",
        "",
        "",
        "until xk+1 = xk.",
        "",
        "As an example, let us find the rounded-square-root of n = 4321.n has 4 digits, so x0 = 7×10(4-2)⁄2 = 70.",
        "Since x2 = x1, we stop here.",
        "So, after just two iterations, we have found that the rounded-square-root of 4321 is 66 (the actual square root is 65.7343137…).",
        "",
        "The number of iterations required when using this method is surprisingly low.",
        "For example, we can find the rounded-square-root of a 5-digit integer (10,000 ≤ n ≤ 99,999) with an average of 3.2102888889 iterations (the average value was rounded to 10 decimal places).",
        "",
        "Using the procedure described above, what is the average number of iterations required to find the rounded-square-root of a 14-digit number (1013 ≤ n < 1014)?",
        "Give your answer rounded to 10 decimal places.",
        "",
        "Note: The symbols ⌊x⌋ and ⌈x⌉ represent the floor function and ceiling function respectively."
      ]
    },
    {
      "id": "5900f46c1000cf542c50ff7e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 256: Tatami-Free Rooms",
      "tests": [
        "assert.strictEqual(euler256(), 85765680, 'message: <code>euler256()</code> should return 85765680.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler256() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler256();"
      ],
      "description": [
        "Tatami are rectangular mats, used to completely cover the floor of a room, without overlap.",
        "",
        "Assuming that the only type of available tatami has dimensions 1×2, there are obviously some limitations for the shape and size of the rooms that can be covered.",
        "",
        "For this problem, we consider only rectangular rooms with integer dimensions a, b and even size s = a·b.",
        "We use the term 'size' to denote the floor surface area of the room, and — without loss of generality — we add the condition a ≤ b.",
        "",
        "There is one rule to follow when laying out tatami: there must be no points where corners of four different mats meet.",
        "For example, consider the two arrangements below for a 4×4 room:",
        "",
        "",
        "",
        "The arrangement on the left is acceptable, whereas the one on the right is not: a red \"X\" in the middle, marks the point where four tatami meet.",
        "",
        "Because of this rule, certain even-sized rooms cannot be covered with tatami: we call them tatami-free rooms.",
        "Further, we define T(s) as the number of tatami-free rooms of size s.",
        "",
        "The smallest tatami-free room has size s = 70 and dimensions 7×10.",
        "All the other rooms of size s = 70 can be covered with tatami; they are: 1×70, 2×35 and 5×14.",
        "Hence, T(70) = 1.",
        "",
        "Similarly, we can verify that T(1320) = 5 because there are exactly 5 tatami-free rooms of size s = 1320:",
        "20×66, 22×60, 24×55, 30×44 and 33×40.",
        "In fact, s = 1320 is the smallest room-size s for which T(s) = 5.",
        "",
        "Find the smallest room-size s for which T(s) = 200."
      ]
    },
    {
      "id": "5900f46e1000cf542c50ff80",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 257: Angular Bisectors",
      "tests": [
        "assert.strictEqual(euler257(), 139012411, 'message: <code>euler257()</code> should return 139012411.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler257() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler257();"
      ],
      "description": [
        "Given is an integer sided triangle ABC with sides a ≤ b ≤ c. ",
        "(AB = c, BC = a and AC = b).",
        "The angular bisectors of the triangle intersect the sides at points E, F and G (see picture below).",
        "",
        "",
        "",
        "",
        "The segments EF, EG and FG partition the triangle ABC into four smaller triangles: AEG, BFE, CGF and EFG.",
        "It can be proven that for each of these four triangles the ratio area(ABC)/area(subtriangle) is rational.",
        "However, there exist triangles for which some or all of these ratios are integral.",
        "",
        "",
        "How many triangles ABC with perimeter≤100,000,000 exist so that the ratio area(ABC)/area(AEG) is integral?"
      ]
    },
    {
      "id": "5900f46e1000cf542c50ff81",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 258: A lagged Fibonacci sequence",
      "tests": [
        "assert.strictEqual(euler258(), 12747994, 'message: <code>euler258()</code> should return 12747994.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler258() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler258();"
      ],
      "description": [
        "A sequence is defined as:",
        "",
        "gk = 1, for 0 ≤ k ≤ 1999",
        "gk = gk-2000 + gk-1999, for k ≥ 2000.",
        "Find gk mod 20092010 for k = 1018."
      ]
    },
    {
      "id": "5900f4701000cf542c50ff82",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 259: Reachable Numbers",
      "tests": [
        "assert.strictEqual(euler259(), 20101196798, 'message: <code>euler259()</code> should return 20101196798.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler259() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler259();"
      ],
      "description": [
        "A positive integer will be called reachable if it can result from an arithmetic expression obeying the following rules:",
        "",
        "Uses the digits 1 through 9, in that order and exactly once each.",
        "Any successive digits can be concatenated (for example, using the digits 2, 3 and 4 we obtain the number 234).",
        "Only the four usual binary arithmetic operations (addition, subtraction, multiplication and division) are allowed.",
        "Each operation can be used any number of times, or not at all.",
        "Unary minus is not allowed.",
        "Any number of (possibly nested) parentheses may be used to define the order of operations.",
        "For example, 42 is reachable, since (1/23) * ((4*5)-6) * (78-9) = 42.",
        "",
        "What is the sum of all positive reachable integers?"
      ]
    },
    {
      "id": "5900f4701000cf542c50ff83",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 260: Stone Game",
      "tests": [
        "assert.strictEqual(euler260(), 167542057, 'message: <code>euler260()</code> should return 167542057.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler260() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler260();"
      ],
      "description": [
        "A game is played with three piles of stones and two players.",
        "At her turn, a player removes one or more stones from the piles. However, if she takes stones from more than one pile, she must remove the same number of stones from each of the selected piles.",
        "",
        "In other words, the player chooses some N>0 and removes:",
        "N stones from any single pile; or",
        "N stones from each of any two piles (2N total); or",
        "N stones from each of the three piles (3N total).",
        "The player taking the last stone(s) wins the game.",
        "",
        "A winning configuration is one where the first player can force a win.",
        "For example, (0,0,13), (0,11,11) and (5,5,5) are winning configurations because the first player can immediately remove all stones.",
        "",
        "A losing configuration is one where the second player can force a win, no matter what the first player does. ",
        "For example, (0,1,2) and (1,3,3) are losing configurations: any legal move leaves a winning configuration for the second player.",
        "",
        "Consider all  losing configurations (xi,yi,zi) where xi ≤ yi ≤ zi ≤ 100.",
        "We can verify that Σ(xi+yi+zi) = 173895 for these.",
        "",
        "Find Σ(xi+yi+zi) where (xi,yi,zi) ranges over the losing configurations",
        "with xi ≤ yi ≤ zi ≤ 1000."
      ]
    },
    {
      "id": "5900f4711000cf542c50ff84",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 261: Pivotal Square Sums",
      "tests": [
        "assert.strictEqual(euler261(), 238890850232021, 'message: <code>euler261()</code> should return 238890850232021.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler261() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler261();"
      ],
      "description": [
        "Let us call a positive integer k a square-pivot, if there is a pair of integers m > 0 and n ≥ k, such that the sum of the (m+1) consecutive squares up to k equals the sum of the m consecutive squares from (n+1) on:",
        "",
        "(k-m)2 + ... + k2 = (n+1)2 + ... + (n+m)2.",
        "",
        "Some small square-pivots are",
        "4: 32 + 42",
        " = 52",
        "21: 202 + 212 = 292",
        "24: 212 + 222 + 232 + 242 = 252 + 262 + 272",
        "110: 1082 + 1092 + 1102 = 1332 + 1342Find the sum of all distinct square-pivots ≤ 1010."
      ]
    },
    {
      "id": "5900f4731000cf542c50ff85",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 262: Mountain Range",
      "tests": [
        "assert.strictEqual(euler262(), 2531.205, 'message: <code>euler262()</code> should return 2531.205.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler262() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler262();"
      ],
      "description": [
        "The following equation represents the continuous topography of a mountainous region, giving the elevation h at any point (x,y):",
        "",
        "",
        "",
        "",
        "A mosquito intends to fly from A(200,200) to B(1400,1400), without leaving the area given by 0 ≤ x, y ≤ 1600.",
        "",
        "Because of the intervening mountains, it first rises straight up to a point A', having elevation f. Then, while remaining at the same elevation f, it flies around any obstacles until it arrives at a point B' directly above B.",
        "",
        "First, determine fmin which is the minimum constant elevation allowing such a trip from A to B, while remaining in the specified area.",
        "Then, find the length of the shortest path between A' and B', while flying at that constant elevation fmin.",
        "",
        "Give that length as your answer, rounded to three decimal places.",
        "",
        "Note: For convenience, the elevation function shown above is repeated below, in a form suitable for most programming languages:",
        "h=( 5000-0.005*(x*x+y*y+x*y)+12.5*(x+y) ) * exp( -abs(0.000001*(x*x+y*y)-0.0015*(x+y)+0.7) )"
      ]
    },
    {
      "id": "5900f4741000cf542c50ff86",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 263: An engineers' dream come true",
      "tests": [
        "assert.strictEqual(euler263(), 2039506520, 'message: <code>euler263()</code> should return 2039506520.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler263() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler263();"
      ],
      "description": [
        "Consider the number 6. The divisors of 6 are: 1,2,3 and 6.",
        "Every number from 1 up to and including 6 can be written as a sum of distinct divisors of 6:",
        "1=1, 2=2, 3=1+2, 4=1+3, 5=2+3, 6=6.",
        "A number n is called a practical number if every number from 1 up to and including n can be expressed as a sum of distinct divisors of n.",
        "",
        "",
        "A pair of consecutive prime numbers with a difference of six is called a sexy pair (since \"sex\" is the Latin word for \"six\"). The first sexy pair is (23, 29).",
        "",
        "",
        "We may occasionally find a triple-pair, which means three consecutive sexy prime pairs, such that the second member of each pair is the first member of the next pair.",
        "",
        "",
        "We shall call a number n such that :",
        "(n-9, n-3), (n-3,n+3), (n+3, n+9) form a triple-pair, and ",
        "the numbers n-8, n-4, n, n+4 and n+8 are all practical,",
        " ",
        "an engineers’ paradise.",
        "",
        "",
        "Find the sum of the first four engineers’ paradises."
      ]
    },
    {
      "id": "5900f4751000cf542c50ff87",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 264: Triangle Centres",
      "tests": [
        "assert.strictEqual(euler264(), 2816417.1055, 'message: <code>euler264()</code> should return 2816417.1055.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler264() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler264();"
      ],
      "description": [
        "Consider all the triangles having:",
        "All their vertices on lattice points.",
        "Circumcentre at the origin O.",
        "Orthocentre at the point H(5, 0).",
        "There are nine such triangles having a perimeter ≤ 50.",
        "Listed and shown in ascending order of their perimeter, they are:",
        "",
        "A(-4, 3), B(5, 0), C(4, -3)",
        "A(4, 3), B(5, 0), C(-4, -3)",
        "A(-3, 4), B(5, 0), C(3, -4)",
        "A(3, 4), B(5, 0), C(-3, -4)",
        "A(0, 5), B(5, 0), C(0, -5)",
        "A(1, 8), B(8, -1), C(-4, -7)",
        "A(8, 1), B(1, -8), C(-4, 7)",
        "A(2, 9), B(9, -2), C(-6, -7)",
        "A(9, 2), B(2, -9), C(-6, 7)",
        "",
        "The sum of their perimeters, rounded to four decimal places, is 291.0089.",
        "",
        "Find all such triangles with a perimeter ≤ 105.",
        "Enter as your answer the sum of their perimeters rounded to four decimal places."
      ]
    },
    {
      "id": "5900f4761000cf542c50ff88",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 265: Binary Circles",
      "tests": [
        "assert.strictEqual(euler265(), 209110240768, 'message: <code>euler265()</code> should return 209110240768.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler265() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler265();"
      ],
      "description": [
        "2N binary digits can be placed in a circle so that all the N-digit clockwise subsequences are distinct.",
        "",
        "For N=3, two such circular arrangements are possible, ignoring rotations:",
        "",
        "",
        "For the first arrangement, the 3-digit subsequences, in clockwise order, are: 000, 001, 010, 101, 011, 111, 110 and 100.",
        "",
        "Each circular arrangement can be encoded as a number by concatenating the binary digits starting with the subsequence of all zeros as the most significant bits and proceeding clockwise. The two arrangements for N=3 are thus represented as 23 and 29:",
        "00010111 2 = 23",
        "00011101 2 = 29",
        "",
        "Calling S(N) the sum of the unique numeric representations, we can see that S(3) = 23 + 29 = 52.",
        "",
        "Find S(5)."
      ]
    },
    {
      "id": "5900f4771000cf542c50ff89",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 266: Pseudo Square Root",
      "tests": [
        "assert.strictEqual(euler266(), 1096883702440585, 'message: <code>euler266()</code> should return 1096883702440585.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler266() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler266();"
      ],
      "description": [
        "The divisors of 12 are: 1,2,3,4,6 and 12.",
        "The largest divisor of 12 that does not exceed the square root of 12 is 3.",
        "We shall call the largest divisor of an integer n that does not exceed the square root of n the pseudo square root (PSR) of n.",
        "It can be seen that PSR(3102)=47.",
        "",
        "",
        "Let p be the product of the primes below 190.",
        "Find PSR(p) mod 1016."
      ]
    },
    {
      "id": "5900f4771000cf542c50ff8a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 267: Billionaire",
      "tests": [
        "assert.strictEqual(euler267(), 0.999992836187, 'message: <code>euler267()</code> should return 0.999992836187.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler267() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler267();"
      ],
      "description": [
        "You are given a unique investment opportunity.",
        "Starting with £1 of capital, you can choose a fixed proportion, f, of your capital to bet on a fair coin toss repeatedly for 1000 tosses.",
        "Your return is double your bet for heads and you lose your bet for tails.",
        "For example, if f = 1/4,  for the first toss you bet £0.25, and if heads comes up you win £0.5 and so then have £1.5. You then bet £0.375 and if the second toss is tails, you have £1.125.",
        "Choosing f to maximize your chances of having at least £1,000,000,000 after 1,000 flips, what is the chance that you become a billionaire?",
        "All computations are assumed to be exact (no rounding), but give your answer rounded to 12 digits behind the decimal point in the form 0.abcdefghijkl."
      ]
    },
    {
      "id": "5900f4791000cf542c50ff8b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 268: Counting numbers with at least four distinct prime factors less than 100",
      "tests": [
        "assert.strictEqual(euler268(), 785478606870985, 'message: <code>euler268()</code> should return 785478606870985.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler268() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler268();"
      ],
      "description": [
        "It can be verified that there are 23 positive integers less than 1000 that are divisible by at least four distinct primes less than 100.",
        "",
        "Find how many positive integers less than 1016 are divisible by at least four distinct primes less than 100."
      ]
    },
    {
      "id": "5900f4791000cf542c50ff8c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 269: Polynomials with at least one integer root",
      "tests": [
        "assert.strictEqual(euler269(), 1311109198529286, 'message: <code>euler269()</code> should return 1311109198529286.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler269() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler269();"
      ],
      "description": [
        "A root or zero of a polynomial P(x) is a solution to the equation P(x) = 0. ",
        "Define Pn as the polynomial whose coefficients are the digits of n.",
        "For example, P5703(x) = 5x3 + 7x2 + 3.",
        "",
        "We can see that:Pn(0) is the last digit of n,",
        "Pn(1) is the sum of the digits of n,",
        "Pn(10) is n itself.Define Z(k) as the number of positive integers, n, not exceeding k for which the polynomial Pn has at least one integer root.",
        "",
        "It can be verified that Z(100 000) is 14696.",
        "",
        "What is Z(1016)?"
      ]
    },
    {
      "id": "5900f47c1000cf542c50ff8e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 270: Cutting Squares",
      "tests": [
        "assert.strictEqual(euler270(), 82282080, 'message: <code>euler270()</code> should return 82282080.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler270() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler270();"
      ],
      "description": [
        "A square piece of paper with integer dimensions N×N is placed with a corner at the origin and two of its sides along the x- and y-axes. Then, we cut it up respecting the following rules:",
        "We only make straight cuts between two points lying on different sides of the square, and having integer coordinates.",
        "Two cuts cannot cross, but several cuts can meet at the same border point.",
        "Proceed until no more legal cuts can be made.",
        "Counting any reflections or rotations as distinct, we call C(N) the number of ways to cut an N×N square. For example, C(1) = 2 and C(2) = 30 (shown below).",
        "",
        "",
        "What is C(30) mod 108 ?"
      ]
    },
    {
      "id": "5900f47b1000cf542c50ff8d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 271: Modular Cubes, part 1",
      "tests": [
        "assert.strictEqual(euler271(), 4617456485273130000, 'message: <code>euler271()</code> should return 4617456485273130000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler271() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler271();"
      ],
      "description": [
        "For a positive number n, define S(n) as the sum of the integers x, for which 1<x<n andx3≡1 mod n.",
        "",
        "",
        "When n=91, there are 8 possible values for x, namely : 9, 16, 22, 29, 53, 74, 79, 81.",
        "Thus, S(91)=9+16+22+29+53+74+79+81=363.",
        "",
        "Find S(13082761331670030)."
      ]
    },
    {
      "id": "5900f47d1000cf542c50ff8f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 272: Modular Cubes, part 2",
      "tests": [
        "assert.strictEqual(euler272(), 8495585919506151000, 'message: <code>euler272()</code> should return 8495585919506151000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler272() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler272();"
      ],
      "description": [
        "For a positive number n, define C(n) as the number of the integers x, for which 1<x<n andx3≡1 mod n.",
        "",
        "",
        "When n=91, there are 8 possible values for x, namely : 9, 16, 22, 29, 53, 74, 79, 81.",
        "Thus, C(91)=8.",
        "",
        "Find the sum of the positive numbers n≤1011 for which C(n)=242."
      ]
    },
    {
      "id": "5900f47e1000cf542c50ff90",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 273: Sum of Squares",
      "tests": [
        "assert.strictEqual(euler273(), 2032447591196869000, 'message: <code>euler273()</code> should return 2032447591196869000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler273() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler273();"
      ],
      "description": [
        "Consider equations of the form: a2 + b2 = N, 0 ≤ a ≤ b, a, b and N integer.",
        "",
        "For N=65 there are two solutions:",
        "a=1, b=8 and a=4, b=7.",
        "We call S(N) the sum of the values of a of all solutions of a2 + b2 = N, 0 ≤ a ≤ b, a, b and N integer.",
        "Thus S(65) = 1 + 4 = 5.",
        "Find ∑S(N), for all squarefree N only divisible by primes of the form 4k+1 with 4k+1 < 150."
      ]
    },
    {
      "id": "5900f47f1000cf542c50ff91",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 274: Divisibility Multipliers",
      "tests": [
        "assert.strictEqual(euler274(), 1601912348822, 'message: <code>euler274()</code> should return 1601912348822.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler274() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler274();"
      ],
      "description": [
        "For each integer p > 1 coprime to 10 there is a positive divisibility multiplier m < p which preserves divisibility by p for the following function on any positive integer, n:",
        "",
        "f(n) = (all but the last digit of n) + (the last digit of n) * m",
        "",
        "That is, if m is the divisibility multiplier for p, then f(n) is divisible by p if and only if n is divisible by p.",
        "",
        "(When n is much larger than p, f(n) will be less than n and repeated application of f provides a multiplicative divisibility test for p.)",
        "",
        "For example, the divisibility multiplier for 113 is 34.",
        "",
        "f(76275) = 7627 + 5 * 34 = 7797 : 76275 and 7797 are both divisible by 113f(12345) = 1234 + 5 * 34 = 1404 : 12345 and 1404 are both not divisible by 113",
        "",
        "The sum of the divisibility multipliers for the primes that are coprime to 10 and less than 1000 is 39517. What is the sum of the divisibility multipliers for the primes that are coprime to 10 and less than 107?"
      ]
    },
    {
      "id": "5900f4801000cf542c50ff92",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 275: Balanced Sculptures",
      "tests": [
        "assert.strictEqual(euler275(), 15030564, 'message: <code>euler275()</code> should return 15030564.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler275() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler275();"
      ],
      "description": [
        "Let us define a balanced sculpture of order n as follows:",
        "A polyomino made up of n+1 tiles known as the blocks (n tiles) and the plinth (remaining tile);",
        "the plinth has its centre at position (x = 0, y = 0);",
        "the blocks have y-coordinates greater than zero (so the plinth is the unique lowest tile);",
        "the centre of mass of all the blocks, combined, has x-coordinate equal to zero.",
        "When counting the sculptures, any arrangements which are simply reflections about the y-axis, are not counted as distinct. For example, the 18 balanced sculptures of order 6 are shown below; note that each pair of mirror images (about the y-axis) is counted as one sculpture:",
        "",
        "",
        "There are 964 balanced sculptures of order 10 and 360505 of order 15.How many balanced sculptures are there of order 18?"
      ]
    },
    {
      "id": "5900f4801000cf542c50ff93",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 276: Primitive Triangles",
      "tests": [
        "assert.strictEqual(euler276(), 5777137137739633000, 'message: <code>euler276()</code> should return 5777137137739633000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler276() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler276();"
      ],
      "description": [
        "Consider the triangles with integer sides a, b and c with a ≤ b ≤ c.",
        "An integer sided triangle (a,b,c) is called primitive if  gcd(a,b,c)=1. ",
        "How many primitive integer sided triangles exist with a perimeter not exceeding 10 000 000?"
      ]
    },
    {
      "id": "5900f4811000cf542c50ff94",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 277: A Modified Collatz sequence",
      "tests": [
        "assert.strictEqual(euler277(), 1125977393124310, 'message: <code>euler277()</code> should return 1125977393124310.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler277() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler277();"
      ],
      "description": [
        "A modified Collatz sequence of integers is obtained from a starting value a1 in the following way:",
        "",
        "an+1 = an/3 if an is divisible by 3. We shall denote this as a large downward step, \"D\".",
        "",
        "an+1 = (4an + 2)/3 if an divided by 3 gives a remainder of 1. We shall denote this as an upward step, \"U\".",
        "",
        "",
        "an+1 = (2an - 1)/3 if an divided by 3 gives a remainder of 2. We shall denote this as a small downward step, \"d\".",
        "",
        "",
        "",
        "",
        "The sequence terminates when some an = 1.",
        "",
        "",
        "Given any integer, we can list out the sequence of steps.",
        "For instance if a1=231, then the sequence {an}={231,77,51,17,11,7,10,14,9,3,1} corresponds to the steps \"DdDddUUdDD\".",
        "",
        "",
        "Of course, there are other sequences that begin with that same sequence \"DdDddUUdDD....\".",
        "For instance, if a1=1004064, then the sequence is DdDddUUdDDDdUDUUUdDdUUDDDUdDD.",
        "In fact, 1004064 is the smallest possible a1 > 106 that begins with the sequence DdDddUUdDD.",
        "",
        "",
        "What is the smallest a1 > 1015 that begins with the sequence \"UDDDUdddDDUDDddDdDddDDUDDdUUDd\"?"
      ]
    },
    {
      "id": "5900f4831000cf542c50ff95",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 278: Linear Combinations of Semiprimes",
      "tests": [
        "assert.strictEqual(euler278(), 1228215747273908500, 'message: <code>euler278()</code> should return 1228215747273908500.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler278() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler278();"
      ],
      "description": [
        "Given the values of integers 1 < a1 < a2 <... < an, consider the linear combinationq1a1 + q2a2 + ... + qnan = b, using only integer values qk ≥ 0. ",
        "",
        "",
        "Note that for a given set of ak, it may be that not all values of b are possible.",
        "For instance, if a1 = 5 and a2 = 7, there are no q1 ≥ 0 and q2 ≥ 0 such that b could be ",
        "1, 2, 3, 4, 6, 8, 9, 11, 13, 16, 18 or 23.",
        "",
        "In fact, 23 is the largest impossible value of b for a1 = 5 and a2 = 7. We therefore call f(5, 7) = 23. Similarly, it can be shown that f(6, 10, 15)=29 and f(14, 22, 77) = 195.",
        "",
        "",
        "Find ∑ f(p*q,p*r,q*r), where p, q and r are prime numbers and p < q < r < 5000."
      ]
    },
    {
      "id": "5900f4841000cf542c50ff96",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 279: Triangles with integral sides and an integral angle",
      "tests": [
        "assert.strictEqual(euler279(), 416577688, 'message: <code>euler279()</code> should return 416577688.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler279() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler279();"
      ],
      "description": [
        "How many triangles are there with integral sides, at least one integral angle (measured in degrees), and a perimeter that does not exceed 108?"
      ]
    },
    {
      "id": "5900f4841000cf542c50ff97",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 280: Ant and seeds",
      "tests": [
        "assert.strictEqual(euler280(), 430.088247, 'message: <code>euler280()</code> should return 430.088247.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler280() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler280();"
      ],
      "description": [
        "A laborious ant walks randomly on a 5x5 grid. The walk starts from the central square. At each step, the ant moves to an adjacent square at random, without leaving the grid; thus there are 2, 3 or 4 possible moves at each step depending on the ant's position.",
        "",
        "At the start of the walk, a seed is placed on each square of the lower row. When the ant isn't carrying a seed and reaches a square of the lower row containing a seed, it will start to carry the seed. The ant will drop the seed on the first empty square of the upper row it eventually reaches.",
        "",
        "What's the expected number of steps until all seeds have been dropped in the top row? ",
        "Give your answer rounded to 6 decimal places."
      ]
    },
    {
      "id": "5900f4861000cf542c50ff98",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 281: Pizza Toppings",
      "tests": [
        "assert.strictEqual(euler281(), 1485776387445623, 'message: <code>euler281()</code> should return 1485776387445623.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler281() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler281();"
      ],
      "description": [
        "You are given a pizza (perfect circle) that has been cut into m·n equal pieces and you want to have exactly one topping on each slice.",
        "",
        "Let f(m,n) denote the number of ways you can have toppings on the pizza with m different toppings (m ≥ 2), using each topping on exactly n slices (n ≥ 1). Reflections are considered distinct, rotations are not. ",
        "",
        "Thus, for instance, f(2,1) = 1, f(2,2) = f(3,1) = 2 and f(3,2) = 16. f(3,2) is shown below:",
        "",
        "",
        "",
        "Find the sum of all f(m,n) such that f(m,n) ≤ 1015."
      ]
    },
    {
      "id": "5900f4861000cf542c50ff99",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 282: The Ackermann function",
      "tests": [
        "assert.strictEqual(euler282(), 1098988351, 'message: <code>euler282()</code> should return 1098988351.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler282() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler282();"
      ],
      "description": [
        "For non-negative integers m, n, the Ackermann function A(m, n) is defined as follows:",
        "",
        "",
        "",
        "For example A(1, 0) = 2, A(2, 2) = 7 and A(3, 4) = 125.",
        "",
        "",
        "Find A(n, n) and give your answer mod 148."
      ]
    },
    {
      "id": "5900f4881000cf542c50ff9a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 283: Integer sided triangles for which the  area/perimeter ratio is integral",
      "tests": [
        "assert.strictEqual(euler283(), 28038042525570324, 'message: <code>euler283()</code> should return 28038042525570324.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler283() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler283();"
      ],
      "description": [
        "Consider the triangle with sides 6, 8 and 10. It can be seen that the perimeter and the area are both equal to 24. ",
        "So the area/perimeter ratio is equal to 1.",
        "Consider also the triangle with sides 13, 14 and 15. The perimeter equals 42 while the area is equal to 84. ",
        "So for this triangle the area/perimeter ratio is equal to 2.",
        "",
        "",
        "Find the sum of the perimeters of all integer sided triangles for which the area/perimeter ratios are equal to positive integers not exceeding 1000."
      ]
    },
    {
      "id": "5900f4891000cf542c50ff9b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 284: Steady Squares",
      "tests": [
        "assert.strictEqual(euler284(), 5a411d7b, 'message: <code>euler284()</code> should return 5a411d7b.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler284() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler284();"
      ],
      "description": [
        "The 3-digit number 376 in the decimal numbering system is an example of numbers with the special property that its square ends with the same digits: 3762 = 141376. Let's call a number with this property a steady square.",
        "",
        "Steady squares can also be observed in other numbering systems. In the base 14 numbering system, the 3-digit number c37 is also a steady square: c372 = aa0c37, and the sum of its digits is c+3+7=18 in the same numbering system. The letters a, b, c and d are used for the 10, 11, 12 and 13 digits respectively, in a manner similar to the hexadecimal numbering system.",
        "",
        "For 1 ≤ n ≤ 9, the sum of the digits of all the n-digit steady squares in the base 14 numbering system is 2d8 (582 decimal). Steady squares with leading 0's are not allowed.",
        "",
        "Find the sum of the digits of all the n-digit steady squares in the base 14 numbering system for",
        "1 ≤ n ≤ 10000 (decimal) and give your answer in the base 14 system using lower case letters where necessary."
      ]
    },
    {
      "id": "5900f48a1000cf542c50ff9c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 285: Pythagorean odds",
      "tests": [
        "assert.strictEqual(euler285(), 157055.80999, 'message: <code>euler285()</code> should return 157055.80999.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler285() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler285();"
      ],
      "description": [
        "Albert chooses a positive integer k, then two real numbers a, b are randomly chosen in the interval [0,1] with uniform distribution.",
        "The square root of the sum (k·a+1)2 + (k·b+1)2 is then computed and rounded to the nearest integer. If the result is equal to k, he scores k points; otherwise he scores nothing.",
        "",
        "For example, if k = 6, a = 0.2 and b = 0.85, then (k·a+1)2 + (k·b+1)2 = 42.05.",
        "The square root of 42.05 is 6.484... and when rounded to the nearest integer, it becomes 6.",
        "This is equal to k, so he scores 6 points.",
        "",
        "It can be shown that if he plays 10 turns with k = 1, k = 2, ..., k = 10, the expected value of his total score, rounded to five decimal places, is 10.20914.",
        "",
        "If he plays 105 turns with k = 1, k = 2, k = 3, ..., k = 105, what is the expected value of his total score, rounded to five decimal places?"
      ]
    },
    {
      "id": "5900f48a1000cf542c50ff9d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 286: Scoring probabilities",
      "tests": [
        "assert.strictEqual(euler286(), 52.6494571953, 'message: <code>euler286()</code> should return 52.6494571953.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler286() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler286();"
      ],
      "description": [
        "Barbara is a mathematician and a basketball player. She has found that the probability of scoring a point when shooting from a distance x is exactly (1 - x/q), where q is a real constant greater than 50.",
        "",
        "During each practice run, she takes shots from distances x = 1, x = 2, ..., x = 50 and, according to her records, she has precisely a 2 % chance to score a total of exactly 20 points.",
        "",
        "Find q and give your answer rounded to 10 decimal places."
      ]
    },
    {
      "id": "5900f48b1000cf542c50ff9e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 287: Quadtree encoding (a simple compression algorithm)",
      "tests": [
        "assert.strictEqual(euler287(), 313135496, 'message: <code>euler287()</code> should return 313135496.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler287() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler287();"
      ],
      "description": [
        "The quadtree encoding allows us to describe a 2N×2N  black and white image as a sequence of bits (0 and 1). Those sequences are to be read from left to right like this:",
        "the first bit deals with the complete 2N×2N region;",
        "\"0\" denotes a split:",
        "the current 2n×2n region is divided into 4 sub-regions of dimension 2n-1×2n-1,",
        "the next bits contains the description of the top left, top right, bottom left and bottom right sub-regions - in that order;",
        "\"10\" indicates that the current region contains only black pixels;",
        "\"11\" indicates that the current region contains only white pixels.Consider the following 4×4 image (colored marks denote places where a split can occur):",
        "",
        "This image can be described by several sequences, for example :",
        "\"001010101001011111011010101010\", of length 30, or",
        "\"0100101111101110\", of length 16, which is the minimal sequence for this image.",
        "",
        "For a positive integer N, define DN as the 2N×2N image with the following coloring scheme:",
        "the pixel with coordinates x = 0, y = 0 corresponds to the bottom left pixel,",
        "if (x - 2N-1)2 + (y - 2N-1)2 ≤ 22N-2 then the pixel is black,",
        "otherwise the pixel is white.What is the length of the minimal sequence describing D24 ?"
      ]
    },
    {
      "id": "5900f48d1000cf542c50ff9f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 288: An enormous factorial",
      "tests": [
        "assert.strictEqual(euler288(), 605857431263982000, 'message: <code>euler288()</code> should return 605857431263982000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler288() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler288();"
      ],
      "description": [
        "For any prime p the number N(p,q) is defined by",
        "N(p,q) = ∑n=0 to q Tn*pn with Tn generated by the following random number generator:",
        "",
        "S0 = 290797",
        "Sn+1 = Sn2 mod 50515093",
        "Tn = Sn mod p",
        "",
        "",
        "Let Nfac(p,q) be the factorial of N(p,q).",
        "Let NF(p,q) be the number of factors p in Nfac(p,q).",
        "",
        "",
        "You are given that NF(3,10000) mod 320=624955285.",
        "",
        "",
        "Find NF(61,107) mod 6110"
      ]
    },
    {
      "id": "5900f48d1000cf542c50ffa0",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 289: Eulerian Cycles",
      "tests": [
        "assert.strictEqual(euler289(), 6567944538, 'message: <code>euler289()</code> should return 6567944538.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler289() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler289();"
      ],
      "description": [
        "Let C(x,y) be a circle passing through the points (x, y), (x, y+1), (x+1, y) and (x+1, y+1).",
        "",
        "For positive integers m and n, let E(m,n) be a configuration which consists of the m·n circles:",
        "{ C(x,y): 0 ≤ x < m, 0 ≤ y < n, x and y are integers }",
        "",
        "An Eulerian cycle on E(m,n) is a closed path that passes through each arc exactly once.",
        "Many such paths are possible on E(m,n), but we are only interested in those which are not self-crossing: ",
        "A non-crossing path just touches itself at lattice points, but it never crosses itself.",
        "",
        "The image below shows E(3,3) and an example of an Eulerian non-crossing path.",
        "",
        "Let L(m,n) be the number of Eulerian non-crossing paths on E(m,n).",
        "For example, L(1,2) = 2, L(2,2) = 37 and L(3,3) = 104290.",
        "",
        "Find L(6,10) mod 1010."
      ]
    },
    {
      "id": "5900f48f1000cf542c50ffa1",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 290: Digital Signature",
      "tests": [
        "assert.strictEqual(euler290(), 20444710234716470, 'message: <code>euler290()</code> should return 20444710234716470.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler290() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler290();"
      ],
      "description": [
        "How many integers 0 ≤ n < 1018 have the property that the sum of the digits of n equals the sum of digits of 137n?"
      ]
    },
    {
      "id": "5900f48f1000cf542c50ffa2",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 291: Panaitopol Primes",
      "tests": [
        "assert.strictEqual(euler291(), 4037526, 'message: <code>euler291()</code> should return 4037526.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler291() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler291();"
      ],
      "description": [
        "A prime number p is called a Panaitopol prime if  for some positive integersx and y.",
        "",
        "",
        "Find how many Panaitopol primes are less than 5×1015."
      ]
    },
    {
      "id": "5900f4911000cf542c50ffa3",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 292: Pythagorean Polygons",
      "tests": [
        "assert.strictEqual(euler292(), 3600060866, 'message: <code>euler292()</code> should return 3600060866.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler292() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler292();"
      ],
      "description": [
        "We shall define a pythagorean polygon  to be a convex polygon with the following properties:there are at least three vertices,",
        "no three vertices are aligned,",
        "each vertex has integer coordinates,",
        "each edge has integer length.For a given integer n, define P(n) as the number of distinct pythagorean polygons for which the perimeter is ≤ n.",
        "Pythagorean polygons should be considered distinct as long as none is a translation of another.",
        "",
        "You are given that P(4) = 1, P(30) = 3655 and P(60) = 891045.",
        "Find P(120)."
      ]
    },
    {
      "id": "5900f4931000cf542c50ffa4",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 293: Pseudo-Fortunate Numbers",
      "tests": [
        "assert.strictEqual(euler293(), 2209, 'message: <code>euler293()</code> should return 2209.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler293() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler293();"
      ],
      "description": [
        "An even positive integer N will be called admissible, if it is a power of 2 or its distinct prime factors are consecutive primes.",
        "The first twelve admissible numbers are 2,4,6,8,12,16,18,24,30,32,36,48.",
        "",
        "",
        "If N is admissible, the smallest integer M > 1 such that N+M is prime, will be called the pseudo-Fortunate number for N.",
        "",
        "",
        "For example, N=630 is admissible since it is even and its distinct prime factors are the consecutive primes 2,3,5 and 7. ",
        "The next prime number after 631 is 641; hence, the pseudo-Fortunate number for 630 is M=11.",
        "It can also be seen that the pseudo-Fortunate number for 16 is 3.",
        "",
        "",
        "Find the sum of all distinct pseudo-Fortunate numbers for admissible numbers N less than 109."
      ]
    },
    {
      "id": "5900f4931000cf542c50ffa5",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 294: Sum of digits - experience #23",
      "tests": [
        "assert.strictEqual(euler294(), 789184709, 'message: <code>euler294()</code> should return 789184709.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler294() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler294();"
      ],
      "description": [
        "For a positive integer k, define d(k) as the sum of the digits of k in its usual decimal representation.",
        "Thus d(42) = 4+2 = 6.",
        "",
        "",
        "For a positive integer n, define S(n) as the number of positive integers k < 10n with the following properties :",
        "k is divisible by 23 and",
        "d(k) = 23.",
        "",
        "You are given that S(9) = 263626 and S(42) = 6377168878570056.",
        "",
        "",
        "Find S(1112) and give your answer mod 109."
      ]
    },
    {
      "id": "5900f4931000cf542c50ffa6",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 295: Lenticular holes",
      "tests": [
        "assert.strictEqual(euler295(), 4884650818, 'message: <code>euler295()</code> should return 4884650818.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler295() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler295();"
      ],
      "description": [
        "We call the convex area enclosed by two circles a lenticular hole if:",
        "The centres of both circles are on lattice points.",
        "The two circles intersect at two distinct lattice points.",
        "The interior of the convex area enclosed by both circles does not contain any lattice points.",
        "",
        "Consider the circles:",
        "C0: x2+y2=25",
        "C1: (x+4)2+(y-4)2=1",
        "C2: (x-12)2+(y-4)2=65",
        "",
        "",
        "The circles C0, C1 and C2 are drawn in the picture below.",
        "",
        "",
        "C0 and C1 form a lenticular hole, as well as C0 and C2.",
        "",
        "We call an ordered pair of positive real numbers (r1, r2) a lenticular pair if there exist two circles with radii r1 and r2 that form a lenticular hole.",
        "We can verify that (1, 5) and (5, √65) are the lenticular pairs of the example above.",
        "",
        "Let L(N) be the number of distinct lenticular pairs (r1, r2) for which 0 < r1 ≤ r2 ≤ N.",
        "We can verify that L(10) = 30 and L(100) = 3442.",
        "",
        "Find L(100 000)."
      ]
    },
    {
      "id": "5900f4941000cf542c50ffa7",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 296: Angular Bisector and Tangent",
      "tests": [
        "assert.strictEqual(euler296(), 1137208419, 'message: <code>euler296()</code> should return 1137208419.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler296() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler296();"
      ],
      "description": [
        "Given is an integer sided triangle ABC with BC ≤ AC ≤ AB.k is the angular bisector of angle ACB.m is the tangent at C to the circumscribed circle of ABC.n is a line parallel to m through B.",
        "The intersection of n and k is called E.",
        "",
        "",
        "",
        "How many triangles ABC with a perimeter not exceeding 100 000 exist such that BE has integral length?"
      ]
    },
    {
      "id": "5900f4951000cf542c50ffa8",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 297: Zeckendorf Representation",
      "tests": [
        "assert.strictEqual(euler297(), 2252639041804718000, 'message: <code>euler297()</code> should return 2252639041804718000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler297() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler297();"
      ],
      "description": [
        "Each new term in the Fibonacci sequence is generated by adding the previous two terms.",
        "Starting with 1 and 2, the first 10 terms will be: 1, 2, 3, 5, 8, 13, 21, 34, 55, 89.",
        "",
        "Every positive integer can be uniquely written as a sum of nonconsecutive terms of the Fibonacci sequence. For example, 100 = 3 + 8 + 89.",
        "Such a sum is called the Zeckendorf representation of the number.",
        "",
        "For any integer n>0, let z(n) be the number of terms in the Zeckendorf representation of n.",
        "Thus, z(5) = 1, z(14) = 2, z(100) = 3 etc.",
        "Also, for 0<n<106, ∑ z(n) = 7894453.",
        "",
        "Find ∑ z(n) for 0<n<1017."
      ]
    },
    {
      "id": "5900f4971000cf542c50ffa9",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 298: Selective Amnesia",
      "tests": [
        "assert.strictEqual(euler298(), 1.76882294, 'message: <code>euler298()</code> should return 1.76882294.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler298() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler298();"
      ],
      "description": [
        "Larry and Robin play a memory game involving of a sequence of random numbers between 1 and 10, inclusive, that are called out one at a time. Each player can remember up to 5 previous numbers. When the called number is in a player's memory, that player is awarded a point. If it's not, the player adds the called number to his memory, removing another number if his memory is full.",
        "",
        "Both players start with empty memories. Both players always add new missed numbers to their memory but use a different strategy in deciding which number to remove:",
        "Larry's strategy is to remove the number that hasn't been called in the longest time.",
        "Robin's strategy is to remove the number that's been in the memory the longest time.",
        "",
        "Example game:Turn",
        "  Callednumber",
        "  Larry'smemory",
        "  Larry'sscore",
        "  Robin'smemory",
        "  Robin'sscore",
        "1",
        "  1",
        "  1",
        "  0",
        "  1",
        "  0",
        "2",
        "  2",
        "  1,2",
        "  0",
        "  1,2",
        "  0",
        "3",
        "  4",
        "  1,2,4",
        "  0",
        "  1,2,4",
        "  0",
        "4",
        "  6",
        "  1,2,4,6",
        "  0",
        "  1,2,4,6",
        "  0",
        "5",
        "  1",
        "  1,2,4,6",
        "  1",
        "  1,2,4,6",
        "  1",
        "6",
        "  8",
        "  1,2,4,6,8",
        "  1",
        "  1,2,4,6,8",
        "  1",
        "7",
        "  10",
        "  1,4,6,8,10",
        "  1",
        "  2,4,6,8,10",
        "  1",
        "8",
        "  2",
        "  1,2,6,8,10",
        "  1",
        "  2,4,6,8,10",
        "  2",
        "9",
        "  4",
        "  1,2,4,8,10",
        "  1",
        "  2,4,6,8,10",
        "  3",
        "10",
        "  1",
        "  1,2,4,8,10",
        "  2",
        "  1,4,6,8,10",
        "  3",
        "",
        "",
        "Denoting Larry's score by L and Robin's score by R, what is the expected value of |L-R| after 50 turns? Give your answer rounded to eight decimal places using the format x.xxxxxxxx ."
      ]
    },
    {
      "id": "5900f4971000cf542c50ffaa",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 299: Three similar triangles",
      "tests": [
        "assert.strictEqual(euler299(), 549936643, 'message: <code>euler299()</code> should return 549936643.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler299() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler299();"
      ],
      "description": [
        "Four points with integer coordinates are selected:A(a, 0), B(b, 0), C(0, c) and D(0, d), ",
        "with 0 < a < b and 0 < c < d.",
        "Point P, also with integer coordinates, is chosen on the line AC so that the three triangles ABP, CDP and BDP are all similar.",
        "",
        "It is easy to prove that the three triangles can be similar, only if a=c.",
        "",
        "So, given that a=c, we are looking for triplets (a,b,d) such that at least one point P (with integer coordinates) exists on AC, making the three triangles ABP, CDP and BDP all similar.",
        "",
        "For example, if (a,b,d)=(2,3,4), it can be easily verified that point P(1,1) satisfies the above condition. ",
        "Note that the triplets (2,3,4) and (2,4,3) are considered as distinct, although point P(1,1) is common for both.",
        "",
        "If b+d < 100, there are 92 distinct triplets (a,b,d) such that point P exists.",
        "If b+d < 100 000, there are 320471 distinct triplets (a,b,d) such that point P exists.",
        "If b+d < 100 000 000, how many distinct triplets (a,b,d) are there such that point P exists?"
      ]
    },
    {
      "id": "5900f49a1000cf542c50ffac",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 300: Protein folding",
      "tests": [
        "assert.strictEqual(euler300(), 8.0540771484375, 'message: <code>euler300()</code> should return 8.0540771484375.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler300() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler300();"
      ],
      "description": [
        "In a very simplified form, we can consider proteins as strings consisting of hydrophobic (H) and polar (P) elements, e.g. HHPPHHHPHHPH. ",
        "For this problem, the orientation of a protein is important; e.g. HPP is considered distinct from PPH. Thus, there are 2n distinct proteins consisting of n elements.",
        "",
        "When one encounters these strings in nature, they are always folded in such a way that the number of H-H contact points is as large as possible, since this is energetically advantageous.",
        "As a result, the H-elements tend to accumulate in the inner part, with the P-elements on the outside.",
        "Natural proteins are folded in three dimensions of course, but we will only consider protein folding in two dimensions.",
        "",
        "The figure below shows two possible ways that our example protein could be folded (H-H contact points are shown with red dots).",
        "",
        "",
        "",
        "The folding on the left has only six H-H contact points, thus it would never occur naturally.",
        "On the other hand, the folding on the right has nine H-H contact points, which is optimal for this string.",
        "",
        "Assuming that H and P elements are equally likely to occur in any position along the string, the average number of H-H contact points in an optimal folding of a random protein string of length 8 turns out to be 850 / 28=3.3203125.",
        "",
        "What is the average number of H-H contact points in an optimal folding of a random protein string of length 15?",
        "Give your answer using as many decimal places as necessary for an exact result."
      ]
    },
    {
      "id": "5900f4991000cf542c50ffab",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 301: Nim",
      "tests": [
        "assert.strictEqual(euler301(), 2178309, 'message: <code>euler301()</code> should return 2178309.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler301() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler301();"
      ],
      "description": [
        "Nim is a game played with heaps of stones, where two players take it in turn to remove any number of stones from any heap until no stones remain.",
        "",
        "We'll consider the three-heap normal-play version of Nim, which works as follows:",
        "- At the start of the game there are three heaps of stones.",
        "- On his turn the player removes any positive number of stones from any single heap.",
        "- The first player unable to move (because no stones remain) loses.",
        "",
        " If (n1,n2,n3) indicates a Nim position consisting of heaps of size n1, n2 and n3 then there is a simple function X(n1,n2,n3) — that you may look up or attempt to deduce for yourself — that returns:",
        "zero if, with perfect strategy, the player about to move will eventually lose; or",
        "non-zero if, with perfect strategy, the player about to move will eventually win.For example X(1,2,3) = 0 because, no matter what the current player does, his opponent can respond with a move that leaves two heaps of equal size, at which point every move by the current player can be mirrored by his opponent until no stones remain; so the current player loses. To illustrate:",
        "- current player moves to (1,2,1)",
        "- opponent moves to (1,0,1)",
        "- current player moves to (0,0,1)",
        "- opponent moves to (0,0,0), and so wins.",
        "",
        "For how many positive integers n ≤ 230 does X(n,2n,3n) = 0 ?"
      ]
    },
    {
      "id": "5900f49b1000cf542c50ffad",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 302: Strong Achilles Numbers",
      "tests": [
        "assert.strictEqual(euler302(), 1170060, 'message: <code>euler302()</code> should return 1170060.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler302() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler302();"
      ],
      "description": [
        "A positive integer n is powerful if p2 is a divisor of n for every prime factor p in n.",
        "",
        "",
        "A positive integer n is a perfect power if n can be expressed as a power of another positive integer.",
        "",
        "",
        "A positive integer n is an Achilles number if n is powerful but not a perfect power. For example, 864 and 1800 are Achilles numbers: 864 = 25·33 and 1800 = 23·32·52.",
        "",
        "",
        "We shall call a positive integer S a Strong Achilles number if both S and φ(S) are Achilles numbers.1",
        "For example, 864 is a Strong Achilles number: φ(864) = 288 = 25·32. However, 1800 isn't a Strong Achilles number because: φ(1800) = 480 = 25·31·51.",
        "",
        "There are 7 Strong Achilles numbers below 104 and 656 below 108.",
        "",
        "",
        "How many Strong Achilles numbers are there below 1018?",
        "",
        "",
        "1 φ denotes Euler's totient function."
      ]
    },
    {
      "id": "5900f49b1000cf542c50ffae",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 303: Multiples with small digits",
      "tests": [
        "assert.strictEqual(euler303(), 1111981904675169, 'message: <code>euler303()</code> should return 1111981904675169.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler303() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler303();"
      ],
      "description": [
        "For a positive integer n, define f(n) as the least positive multiple of n that, written in base 10, uses only digits ≤ 2.",
        "Thus f(2)=2, f(3)=12, f(7)=21, f(42)=210, f(89)=1121222.",
        "Also, .",
        "",
        "Find ."
      ]
    },
    {
      "id": "5900f49d1000cf542c50ffaf",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 304: Primonacci",
      "tests": [
        "assert.strictEqual(euler304(), 283988410192, 'message: <code>euler304()</code> should return 283988410192.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler304() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler304();"
      ],
      "description": [
        "For any positive integer n the function next_prime(n) returns the smallest prime p  such that p>n.",
        "",
        "",
        "The sequence a(n) is defined by:",
        "a(1)=next_prime(1014) and a(n)=next_prime(a(n-1)) for n>1.",
        "",
        "",
        "The fibonacci sequence f(n) is defined by:",
        "f(0)=0, f(1)=1 and f(n)=f(n-1)+f(n-2) for n>1.",
        "",
        "",
        "The sequence b(n) is defined as f(a(n)).",
        "",
        "",
        "Find ∑b(n) for 1≤n≤100 000. ",
        "Give your answer mod 1234567891011."
      ]
    },
    {
      "id": "5900f49d1000cf542c50ffb0",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 305: Reflexive Position",
      "tests": [
        "assert.strictEqual(euler305(), 18174995535140, 'message: <code>euler305()</code> should return 18174995535140.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler305() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler305();"
      ],
      "description": [
        "Let's call S the (infinite) string that is made by concatenating the consecutive positive integers (starting from 1)  written down in base 10. ",
        "Thus, S = 1234567891011121314151617181920212223242...",
        "",
        "",
        "It's easy to see that any number will show up an infinite number of times in S.",
        "",
        "",
        "Let's call f(n) the starting position of the nth occurrence of n in S. ",
        "For example, f(1)=1, f(5)=81, f(12)=271 and f(7780)=111111365.",
        "",
        "",
        "Find ∑f(3k) for 1≤k≤13."
      ]
    },
    {
      "id": "5900f49f1000cf542c50ffb1",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 306: Paper-strip Game",
      "tests": [
        "assert.strictEqual(euler306(), 852938, 'message: <code>euler306()</code> should return 852938.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler306() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler306();"
      ],
      "description": [
        "The following game is a classic example of Combinatorial Game Theory:",
        "",
        "Two players start with a strip of n white squares and they take alternate turns.",
        "On each turn, a player picks two contiguous white squares and paints them black.",
        "The first player who cannot make a move loses.",
        "",
        "If n = 1, there are no valid moves, so the first player loses automatically.",
        "If n = 2, there is only one valid move, after which the second player loses.",
        "If n = 3, there are two valid moves, but both leave a situation where the second player loses.",
        "If n = 4, there are three valid moves for the first player; she can win the game by painting the two middle squares.",
        "If n = 5, there are four valid moves for the first player (shown below in red); but no matter what she does, the second player (blue) wins.",
        "",
        "",
        "",
        "So, for 1 ≤ n ≤ 5, there are 3 values of n for which the first player can force a win.",
        "Similarly, for 1 ≤ n ≤ 50, there are 40 values of n for which the first player can force a win.",
        "",
        "For 1 ≤ n ≤ 1 000 000, how many values of n are there for which the first player can force a win?"
      ]
    },
    {
      "id": "5900f4a01000cf542c50ffb2",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 307: Chip Defects",
      "tests": [
        "assert.strictEqual(euler307(), 0.7311720251, 'message: <code>euler307()</code> should return 0.7311720251.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler307() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler307();"
      ],
      "description": [
        "k defects are randomly distributed amongst n integrated-circuit chips produced by a factory (any number of defects may be found on a chip and each defect is independent of the other defects).",
        "",
        "",
        "Let p(k,n) represent the probability that there is a chip with at least 3 defects.",
        "For instance p(3,7) ≈ 0.0204081633.",
        "",
        "",
        "Find p(20 000, 1 000 000) and give your answer rounded to 10 decimal places in the form 0.abcdefghij"
      ]
    },
    {
      "id": "5900f4a11000cf542c50ffb3",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 308: An amazing Prime-generating Automaton",
      "tests": [
        "assert.strictEqual(euler308(), 1539669807660924, 'message: <code>euler308()</code> should return 1539669807660924.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler308() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler308();"
      ],
      "description": [
        "A program written in the programming language Fractran consists of a list of fractions.",
        "",
        "The internal state of the Fractran Virtual Machine is a positive integer, which is initially set to a seed value. Each iteration of a Fractran program multiplies the state integer by the first fraction in the list which will leave it an integer.",
        "",
        "For example, one of the Fractran programs that John Horton Conway wrote for prime-generation consists of the following 14 fractions:1791",
        ",",
        "7885",
        ",",
        "1951",
        ",",
        "2338",
        ",",
        "2933",
        ",",
        "7729",
        ",",
        "9523",
        ",",
        "7719",
        ",",
        "117",
        ",",
        "1113",
        ",",
        "1311",
        ",",
        "152",
        ",",
        "17",
        ",",
        "551",
        ".",
        "Starting with the seed integer 2, successive iterations of the program produce the sequence:",
        "15, 825, 725, 1925, 2275, 425, ..., 68, 4, 30, ..., 136, 8, 60, ..., 544, 32, 240, ...",
        "",
        "The powers of 2 that appear in this sequence are 22, 23, 25, ...",
        "It can be shown that all the powers of 2 in this sequence have prime exponents and that all the primes appear as exponents of powers of 2, in proper order!",
        "",
        "If someone uses the above Fractran program to solve Project Euler Problem 7 (find the 10001st prime), how many iterations would be needed until the program produces 210001st prime ?"
      ]
    },
    {
      "id": "5900f4a11000cf542c50ffb4",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 309: Integer Ladders",
      "tests": [
        "assert.strictEqual(euler309(), 210139, 'message: <code>euler309()</code> should return 210139.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler309() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler309();"
      ],
      "description": [
        "In the classic \"Crossing Ladders\" problem, we are given the lengths x and y of two ladders resting on the opposite walls of a narrow, level street. We are also given the height h above the street where the two ladders cross and we are asked to find the width of the street (w).",
        "",
        "",
        "",
        "Here, we are only concerned with instances where all four variables are positive integers.",
        "For example, if x = 70, y = 119 and h = 30, we can calculate that w = 56.",
        "",
        "In fact, for integer values x, y, h and 0 < x < y < 200, there are only five triplets (x,y,h) producing integer solutions for w:",
        "(70, 119, 30), (74, 182, 21), (87, 105, 35), (100, 116, 35) and (119, 175, 40).",
        "",
        "For integer values x, y, h and 0 < x < y < 1 000 000, how many triplets (x,y,h) produce integer solutions for w?"
      ]
    },
    {
      "id": "5900f4a21000cf542c50ffb5",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 310: Nim Square",
      "tests": [
        "assert.strictEqual(euler310(), 2586528661783, 'message: <code>euler310()</code> should return 2586528661783.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler310() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler310();"
      ],
      "description": [
        "Alice and Bob play the game Nim Square.",
        "Nim Square is just like ordinary three-heap normal play Nim, but the players may only remove a square number of stones from a heap.",
        "The number of stones in the three heaps is represented by the ordered triple (a,b,c).",
        "If 0≤a≤b≤c≤29 then the number of losing positions for the next player is 1160.",
        "",
        "",
        "Find the number of losing positions for the next player if 0≤a≤b≤c≤100 000."
      ]
    },
    {
      "id": "5900f4a31000cf542c50ffb6",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 311: Biclinic Integral Quadrilaterals",
      "tests": [
        "assert.strictEqual(euler311(), 2466018557, 'message: <code>euler311()</code> should return 2466018557.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler311() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler311();"
      ],
      "description": [
        "ABCD is a convex, integer sided quadrilateral with 1 ≤ AB < BC < CD < AD.",
        "BD has integer length. O is the midpoint of BD. AO has integer length.",
        "We'll call ABCD a biclinic integral quadrilateral if AO = CO ≤ BO = DO.",
        "",
        "For example, the following quadrilateral is a biclinic integral quadrilateral:",
        "AB = 19, BC = 29, CD = 37, AD = 43, BD = 48 and AO = CO = 23.",
        "",
        "",
        "",
        "",
        "Let B(N) be the number of distinct biclinic integral quadrilaterals ABCD that satisfy AB2+BC2+CD2+AD2 ≤ N.",
        "We can verify that B(10 000) = 49 and B(1 000 000) = 38239.",
        "",
        "",
        "Find B(10 000 000 000)."
      ]
    },
    {
      "id": "5900f4a51000cf542c50ffb7",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 312: Cyclic paths on Sierpiński graphs",
      "tests": [
        "assert.strictEqual(euler312(), 324681947, 'message: <code>euler312()</code> should return 324681947.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler312() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler312();"
      ],
      "description": [
        "- A Sierpiński graph of order-1 (S1) is an equilateral triangle.",
        "- Sn+1 is obtained from Sn by positioning three copies of Sn so that every pair of copies has one common corner.",
        "",
        "",
        "",
        "",
        "Let C(n) be the number of cycles that pass exactly once through all the vertices of Sn.",
        "For example, C(3) = 8 because eight such cycles can be drawn on S3, as shown below:",
        "",
        "",
        "",
        "",
        "It can also be verified that :",
        "C(1) = C(2) = 1",
        "C(5) = 71328803586048",
        "C(10 000) mod 108 = 37652224",
        "C(10 000) mod 138 = 617720485",
        "",
        "Find C(C(C(10 000))) mod 138."
      ]
    },
    {
      "id": "5900f4a61000cf542c50ffb8",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 313: Sliding game",
      "tests": [
        "assert.strictEqual(euler313(), 2057774861813004, 'message: <code>euler313()</code> should return 2057774861813004.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler313() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler313();"
      ],
      "description": [
        "In a sliding game a counter may slide horizontally or vertically into an empty space. The objective of the game is to move the red counter from the top left corner of a grid to the bottom right corner; the space always starts in the bottom right corner. For example, the following sequence of pictures show how the game can be completed in five moves on a 2 by 2 grid.",
        "",
        "",
        "",
        "Let S(m,n) represent the minimum number of moves to complete the game on an m by n grid. For example, it can be verified that S(5,4) = 25.",
        "",
        "",
        "",
        "There are exactly 5482 grids for which S(m,n) = p2, where p < 100 is prime.",
        "",
        "How many grids does S(m,n) = p2, where p < 106 is prime?"
      ]
    },
    {
      "id": "5900f4a71000cf542c50ffb9",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 314: The Mouse on the Moon",
      "tests": [
        "assert.strictEqual(euler314(), 132.52756426, 'message: <code>euler314()</code> should return 132.52756426.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler314() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler314();"
      ],
      "description": [
        "The moon has been opened up, and land can be obtained for free, but there is a catch. You have to build a wall around the land that you stake out, and building a wall on the moon is expensive. Every country has been allotted a 500 m by 500 m square area, but they will possess only that area which they wall in. 251001 posts have been placed in a rectangular grid with 1 meter spacing. The wall must be a closed series of straight lines, each line running from post to post.",
        "",
        "",
        "The bigger countries of course have built a 2000 m wall enclosing the entire 250 000 m2 area. The Duchy of Grand Fenwick, has a tighter budget, and has asked you (their Royal Programmer) to compute what shape would get best maximum enclosed-area/wall-length ratio.",
        "",
        "",
        "You have done some preliminary calculations on a sheet of paper.",
        "For a 2000 meter wall enclosing the 250 000 m2 area the",
        "enclosed-area/wall-length ratio is 125.",
        "Although not allowed , but to get an idea if this is anything better:  if you place a circle inside the square area touching the four sides the area will be equal to π*2502 m2 and the perimeter will be π*500 m, so the enclosed-area/wall-length ratio will also be 125.",
        "",
        "",
        "However, if you cut off from the square four triangles with sides 75 m, 75 m and 75√2 m the total area becomes 238750 m2 and the perimeter becomes 1400+300√2 m. So this gives an enclosed-area/wall-length ratio of 130.87, which is significantly better.",
        "",
        "",
        "",
        "Find the maximum enclosed-area/wall-length ratio.",
        "Give your answer rounded to 8 places behind the decimal point in the form abc.defghijk."
      ]
    },
    {
      "id": "5900f4a71000cf542c50ffba",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 315: Digital root clocks",
      "tests": [
        "assert.strictEqual(euler315(), 13625242, 'message: <code>euler315()</code> should return 13625242.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler315() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler315();"
      ],
      "description": [
        "Sam and Max are asked to transform two digital clocks into two \"digital root\" clocks.",
        "A digital root clock is a digital clock that calculates digital roots step by step.",
        "",
        "When a clock is fed a number, it will show it and then it will start the calculation, showing all the intermediate values until it gets to the result.",
        "For example, if the clock is fed the number 137, it will show: \"137\" → \"11\" → \"2\" and then it will go black, waiting for the next number.",
        "",
        "Every digital number consists of some light segments: three horizontal (top, middle, bottom) and four vertical (top-left, top-right, bottom-left, bottom-right).",
        "Number \"1\" is made of vertical top-right and bottom-right, number \"4\" is made by middle horizontal and vertical top-left, top-right and bottom-right. Number \"8\" lights them all.",
        "",
        "The clocks consume energy only when segments are turned on/off.",
        "To turn on a \"2\" will cost 5 transitions, while a \"7\" will cost only 4 transitions.",
        "",
        "Sam and Max built two different clocks.",
        "",
        "Sam's clock is fed e.g. number 137: the clock shows \"137\", then the panel is turned off, then the next number (\"11\") is turned on, then the panel is turned off again and finally the last number (\"2\") is turned on and, after some time, off.",
        "For the example, with number 137, Sam's clock requires:\"137\"",
        ":",
        "(2 + 5 + 4) × 2 = 22 transitions (\"137\" on/off).",
        "\"11\"",
        ":",
        "(2 + 2) × 2 = 8 transitions (\"11\" on/off).",
        "\"2\"",
        ":",
        "(5) × 2 = 10 transitions (\"2\" on/off).",
        "",
        "For a grand total of 40 transitions.",
        "",
        "Max's clock works differently. Instead of turning off the whole panel, it is smart enough to turn off only those segments that won't be needed for the next number.",
        "For number 137, Max's clock requires:\"137\"",
        ":",
        "2 + 5 + 4 = 11 transitions (\"137\" on)",
        "7 transitions (to turn off the segments that are not needed for number \"11\").",
        "\"11\"",
        ":",
        "0 transitions (number \"11\" is already turned on correctly)",
        "3 transitions (to turn off the first \"1\" and the bottom part of the second \"1\"; ",
        "the top part is common with number \"2\").",
        "\"2\"",
        ":",
        "4 transitions (to turn on the remaining segments in order to get a \"2\")",
        "5 transitions (to turn off number \"2\").",
        "",
        "For a grand total of 30 transitions.",
        "",
        "Of course, Max's clock consumes less power than Sam's one.",
        "The two clocks are fed all the prime numbers between A = 107 and B = 2×107. ",
        "Find the difference between the total number of transitions needed by Sam's clock and that needed by Max's one."
      ]
    },
    {
      "id": "5900f4a81000cf542c50ffbb",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 316: Numbers in decimal expansions",
      "tests": [
        "assert.strictEqual(euler316(), 542934735751917760, 'message: <code>euler316()</code> should return 542934735751917760.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler316() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler316();"
      ],
      "description": [
        "Let p = p1 p2 p3 ... be an infinite sequence of random digits, selected from {0,1,2,3,4,5,6,7,8,9} with equal probability.",
        "It can be seen that p corresponds to the real number 0.p1 p2 p3 .... ",
        "It can also be seen that choosing a random real number from the interval [0,1) is equivalent to choosing an infinite sequence of random digits selected from {0,1,2,3,4,5,6,7,8,9} with equal probability.",
        "",
        "For any positive integer n with d decimal digits, let k be the smallest index such that pk, pk+1, ...pk+d-1 are the decimal digits of n, in the same order.",
        "Also, let g(n) be the expected value of k; it can be proven that g(n) is always finite and, interestingly, always an integer number.",
        "",
        "For example, if n = 535, then",
        "for p = 31415926535897...., we get k = 9",
        "for p = 355287143650049560000490848764084685354..., we get k = 36",
        "etc and we find that g(535) = 1008.",
        "",
        "Given that , find ",
        "",
        "Note:  represents the floor function."
      ]
    },
    {
      "id": "5900f4aa1000cf542c50ffbc",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 317: Firecracker",
      "tests": [
        "assert.strictEqual(euler317(), 1856532.8455, 'message: <code>euler317()</code> should return 1856532.8455.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler317() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler317();"
      ],
      "description": [
        "A firecracker explodes at a height of 100 m above level ground. It breaks into a large number of very small fragments, which move in every direction; all of them have the same initial velocity of 20 m/s.",
        "",
        "",
        "We assume that the fragments move without air resistance, in a uniform gravitational field with g=9.81 m/s2.",
        "",
        "",
        "Find the volume (in m3) of the region through which the fragments move before reaching the ground. ",
        "Give your answer rounded to four decimal places."
      ]
    },
    {
      "id": "5900f4ab1000cf542c50ffbd",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 318: 2011 nines",
      "tests": [
        "assert.strictEqual(euler318(), 709313889, 'message: <code>euler318()</code> should return 709313889.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler318() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler318();"
      ],
      "description": [
        "Consider the real number √2+√3.",
        "When we calculate the even powers of √2+√3",
        "we get:",
        "(√2+√3)2 = 9.898979485566356...",
        "(√2+√3)4 = 97.98979485566356...",
        "(√2+√3)6 = 969.998969071069263...",
        "(√2+√3)8 = 9601.99989585502907...",
        "(√2+√3)10 = 95049.999989479221...",
        "(√2+√3)12 = 940897.9999989371855...",
        "(√2+√3)14 = 9313929.99999989263...",
        "(√2+√3)16 = 92198401.99999998915...",
        "",
        "It looks like that the number of consecutive nines at the beginning of the fractional part of these powers is non-decreasing.",
        "In fact it can be proven that the fractional part of (√2+√3)2n approaches 1 for large n.",
        "",
        "",
        "Consider all real numbers of the form √p+√q with p and q positive integers and p<q, such that the fractional part ",
        "of (√p+√q)2n approaches 1 for large n.",
        "",
        "",
        "Let C(p,q,n) be the number of consecutive nines at the beginning of the fractional part of  (√p+√q)2n.",
        "",
        "",
        "Let N(p,q) be the minimal value of n such that C(p,q,n) ≥ 2011.",
        "",
        "",
        "Find ∑N(p,q) for p+q ≤ 2011."
      ]
    },
    {
      "id": "5900f4ab1000cf542c50ffbe",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 319: Bounded Sequences",
      "tests": [
        "assert.strictEqual(euler319(), 268457129, 'message: <code>euler319()</code> should return 268457129.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler319() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler319();"
      ],
      "description": [
        "Let x1, x2,..., xn be a sequence of length n such that:",
        "x1 = 2",
        "for all 1 < i ≤ n : xi-1 < xi",
        "for all i and j with 1 ≤ i, j ≤ n : (xi) j < (xj + 1)i",
        "",
        "There are only five such sequences of length 2, namely:",
        "{2,4}, {2,5}, {2,6}, {2,7} and {2,8}.",
        "There are 293 such sequences of length 5; three examples are given below:",
        "{2,5,11,25,55}, {2,6,14,36,88}, {2,8,22,64,181}.",
        "",
        "",
        "Let t(n) denote the number of such sequences of length n.",
        "You are given that t(10) = 86195 and t(20) = 5227991891.",
        "",
        "",
        "Find t(1010) and give your answer modulo 109."
      ]
    },
    {
      "id": "5900f4ae1000cf542c50ffbf",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 320: Factorials divisible by a huge integer",
      "tests": [
        "assert.strictEqual(euler320(), 278157919195482660, 'message: <code>euler320()</code> should return 278157919195482660.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler320() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler320();"
      ],
      "description": [
        "Let N(i) be the smallest integer n such that n! is divisible by (i!)1234567890",
        "",
        "Let S(u)=∑N(i) for 10 ≤ i ≤ u.",
        "",
        "",
        "S(1000)=614538266565663.",
        "",
        "",
        "Find S(1 000 000) mod 1018."
      ]
    },
    {
      "id": "5900f4ae1000cf542c50ffc0",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 321: Swapping Counters",
      "tests": [
        "assert.strictEqual(euler321(), 2470433131948040, 'message: <code>euler321()</code> should return 2470433131948040.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler321() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler321();"
      ],
      "description": [
        "A horizontal row comprising of 2n + 1 squares has n red counters placed at one end and n blue counters at the other end, being separated by a single empty square in the centre. For example, when n = 3.",
        "",
        "",
        "",
        "A counter can move from one square to the next (slide) or can jump over another counter (hop) as long as the square next to that counter is unoccupied.",
        "",
        "",
        "",
        "Let M(n) represent the minimum number of moves/actions to completely reverse the positions of the coloured counters; that is, move all the red counters to the right and all the blue counters to the left.",
        "It can be verified M(3) = 15, which also happens to be a triangle number.",
        "",
        "If we create a sequence based on the values of n for which M(n) is a triangle number then the first five terms would be:",
        "1, 3, 10, 22, and 63, and their sum would be 99.",
        "",
        "Find the sum of the first forty terms of this sequence."
      ]
    },
    {
      "id": "5900f4af1000cf542c50ffc1",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 322: Binomial coefficients divisible by 10",
      "tests": [
        "assert.strictEqual(euler322(), 999998760323314000, 'message: <code>euler322()</code> should return 999998760323314000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler322() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler322();"
      ],
      "description": [
        "Let T(m, n) be the number of the binomial coefficients iCn that are divisible by 10 for n ≤ i < m(i, m and n are positive integers).",
        "You are given that T(109, 107-10) = 989697000.",
        "",
        "",
        "Find T(1018, 1012-10)."
      ]
    },
    {
      "id": "5900f4b01000cf542c50ffc2",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 323: Bitwise-OR operations on random integers",
      "tests": [
        "assert.strictEqual(euler323(), 6.3551758451, 'message: <code>euler323()</code> should return 6.3551758451.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler323() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler323();"
      ],
      "description": [
        "Let y0, y1, y2,... be a sequence of random unsigned 32 bit integers",
        "(i.e. 0 ≤ yi < 232, every value equally likely).",
        "For the sequence xi the following recursion is given:x0 = 0 and",
        "xi = xi-1| yi-1, for i > 0. ( | is the bitwise-OR operator)",
        "It can be seen that eventually there will be an index N such that xi = 232 -1 (a bit-pattern of all ones) for all i ≥ N.",
        "",
        "Find the expected value of N. ",
        "Give your answer rounded to 10 digits after the decimal point."
      ]
    },
    {
      "id": "5900f4b11000cf542c50ffc3",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 324: Building a tower",
      "tests": [
        "assert.strictEqual(euler324(), 96972774, 'message: <code>euler324()</code> should return 96972774.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler324() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler324();"
      ],
      "description": [
        "Let f(n) represent the number of ways one can fill a 3×3×n tower with blocks of 2×1×1. You're allowed to rotate the blocks in any way you like; however, rotations, reflections etc of the tower itself are counted as distinct.",
        "For example (with q = 100000007) :f(2) = 229,f(4) = 117805,f(10) mod q = 96149360,f(103) mod q = 24806056,f(106) mod q = 30808124.",
        "",
        "Find f(1010000) mod 100000007."
      ]
    },
    {
      "id": "5900f4b11000cf542c50ffc4",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 325: Stone Game II",
      "tests": [
        "assert.strictEqual(euler325(), 54672965, 'message: <code>euler325()</code> should return 54672965.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler325() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler325();"
      ],
      "description": [
        "A game is played with two piles of stones and two players. At her turn, a player removes a number of stones from the larger pile. The number of stones she removes must be a positive multiple of the number of stones in the smaller pile.",
        "",
        "",
        "",
        "E.g., let the ordered pair(6,14) describe a configuration with 6 stones in the smaller pile and 14 stones in the larger pile, then the first player can remove 6 or 12 stones from the larger pile.",
        "",
        "",
        "",
        "The player taking all the stones from a pile wins the game.",
        "",
        "",
        "",
        "A winning configuration is one where the first player can force a win. For example, (1,5), (2,6) and (3,12) are winning configurations because the first player can immediately remove all stones in the second pile.",
        "",
        "",
        "",
        "A losing configuration is one where the second player can force a win, no matter what the first player does. For example, (2,3) and (3,4) are losing configurations: any legal move leaves a winning configuration for the second player.",
        "",
        "",
        "",
        "Define S(N) as the sum of (xi+yi) for all losing configurations (xi,yi), 0 < xi < yi ≤ N. We can verify that S(10) = 211 and S(104) = 230312207313.",
        "",
        "",
        "",
        "Find S(1016) mod 710."
      ]
    },
    {
      "id": "5900f4b21000cf542c50ffc5",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 326: Modulo Summations",
      "tests": [
        "assert.strictEqual(euler326(), 1966666166408794400, 'message: <code>euler326()</code> should return 1966666166408794400.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler326() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler326();"
      ],
      "description": [
        "Let an be a sequence recursively defined by: . ",
        "",
        "",
        "So the first 10 elements of an are: 1,1,0,3,0,3,5,4,1,9.",
        "",
        "Let f(N,M) represent the number of pairs (p,q) such that: ",
        "",
        "",
        "It can be seen that f(10,10)=4 with the pairs (3,3), (5,5), (7,9) and (9,10).",
        "",
        "",
        "You are also given that f(104,103)=97158.",
        "",
        "Find f(1012,106)."
      ]
    },
    {
      "id": "5900f4b31000cf542c50ffc6",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 327: Rooms of Doom",
      "tests": [
        "assert.strictEqual(euler327(), 34315549139516, 'message: <code>euler327()</code> should return 34315549139516.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler327() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler327();"
      ],
      "description": [
        "A series of three rooms are connected to each other by automatic doors.",
        "",
        "",
        "",
        "Each door is operated by a security card. Once you enter a room the door automatically closes and that security card cannot be used again. A machine at the start will dispense an unlimited number of cards, but each room (including the starting room) contains scanners and if they detect that you are holding more than three security cards or if they detect an unattended security card on the floor, then all the doors will become permanently locked. However, each room contains a box where you may safely store any number of security cards for use at a later stage.",
        "",
        "If you simply tried to travel through the rooms one at a time then as you entered room 3 you would have used all three cards and would be trapped in that room forever!",
        "",
        "However, if you make use of the storage boxes, then escape is possible. For example, you could enter room 1 using your first card, place one card in the storage box, and use your third card to exit the room back to the start. Then after collecting three more cards from the dispensing machine you could use one to enter room 1 and collect the card you placed in the box a moment ago. You now have three cards again and will be able to travel through the remaining three doors. This method allows you to travel through all three rooms using six security cards in total.",
        "",
        "It is possible to travel through six rooms using a total of 123 security cards while carrying a maximum of 3 cards.",
        "",
        "Let C be the maximum number of cards which can be carried at any time.",
        "Let R be the number of rooms to travel through.",
        "Let M(C,R) be the minimum number of cards required from the dispensing machine to travel through R rooms carrying up to a maximum of C cards at any time.",
        "",
        "For example, M(3,6)=123 and M(4,6)=23.And, ΣM(C,6)=146 for 3 ≤ C ≤ 4.",
        "",
        "",
        "You are given that ΣM(C,10)=10382 for 3 ≤ C ≤ 10.",
        "",
        "Find ΣM(C,30) for 3 ≤ C ≤ 40."
      ]
    },
    {
      "id": "5900f4b41000cf542c50ffc7",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 328: Lowest-cost Search",
      "tests": [
        "assert.strictEqual(euler328(), 260511850222, 'message: <code>euler328()</code> should return 260511850222.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler328() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler328();"
      ],
      "description": [
        "We are trying to find a hidden number selected from the set of integers {1, 2, ..., n} by asking questions. ",
        "Each number (question) we ask, has a cost equal to the number asked and we get one of three possible answers: \"Your guess is lower than the hidden number\", or",
        " \"Yes, that's it!\", or",
        " \"Your guess is higher than the hidden number\".",
        "Given the value of n, an optimal strategy minimizes the total cost (i.e. the sum of all the questions asked) for the worst possible case. E.g.",
        "",
        "If n=3, the best we can do is obviously to ask the number \"2\". The answer will immediately lead us to find the hidden number (at a total cost = 2).",
        "",
        "If n=8, we might decide to use a \"binary search\" type of strategy: Our first question would be \"4\" and if the hidden number is higher than 4 we will need one or two additional questions.",
        "Let our second question be \"6\". If the hidden number is still higher than 6, we will need a third question in order to discriminate between 7 and 8.",
        "Thus, our third question will be \"7\" and the total cost for this worst-case scenario will be 4+6+7=17.",
        "",
        "We can improve considerably the worst-case cost for n=8, by asking \"5\" as our first question.",
        "If we are told that the hidden number is higher than 5, our second question will be \"7\", then we'll know for certain what the hidden number is (for a total cost of 5+7=12).",
        "If we are told that the hidden number is lower than 5, our second question will be \"3\" and if the hidden number is lower than 3 our third question will be \"1\", giving a total cost of 5+3+1=9.",
        "Since 12>9, the worst-case cost for this strategy is 12. That's better than what we achieved previously with the \"binary search\" strategy; it is also better than or equal to any other strategy.",
        "So, in fact, we have just described an optimal strategy for n=8.",
        "",
        "Let C(n) be the worst-case cost achieved by an optimal strategy for n, as described above.",
        "Thus C(1) = 0, C(2) = 1, C(3) = 2 and C(8) = 12.",
        "Similarly, C(100) = 400 and C(n) = 17575.",
        "",
        "Find C(n)."
      ]
    },
    {
      "id": "5900f4b51000cf542c50ffc8",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 329: Prime Frog",
      "tests": [
        "assert.strictEqual(euler329(), 199740353 / 29386561536000, 'message: <code>euler329()</code> should return 199740353 / 29386561536000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler329() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler329();"
      ],
      "description": [
        "Susan has a prime frog.",
        "Her frog is jumping around over 500 squares numbered 1 to 500.",
        "He can only jump one square to the left or to the right, with equal probability, and he cannot jump outside the range [1;500].(if it lands at either end, it automatically jumps to the only available square on the next move.)",
        "",
        "",
        "When he is on a square with a prime number on it, he croaks 'P' (PRIME) with probability 2/3 or 'N' (NOT PRIME) with probability 1/3 just before jumping to the next square.",
        "When he is on a square with a number on it that is not a prime he croaks 'P' with probability 1/3 or 'N' with probability 2/3 just before jumping to the next square.",
        "",
        "",
        "Given that the frog's starting position is random with the same probability for every square, and given that she listens to his first 15 croaks, what is the probability that she hears the sequence PPPPNNPPPNPPNPN?",
        "",
        "Give your answer as a fraction p/q in reduced form."
      ]
    },
    {
      "id": "5900f4b71000cf542c50ffc9",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 330: Euler's Number",
      "tests": [
        "assert.strictEqual(euler330(), 15955822, 'message: <code>euler330()</code> should return 15955822.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler330() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler330();"
      ],
      "description": [
        "An infinite sequence of real numbers a(n) is defined for all integers n as follows:",
        "",
        "",
        "For example,a(0) = ",
        "    11!",
        "    +",
        "    12!",
        "    +",
        "    13!",
        "    + ... = e − 1 ",
        "a(1) = ",
        "    e − 11!",
        "    +",
        "    12!",
        "    +",
        "    13!",
        "    + ... = 2e − 3 ",
        "a(2) = ",
        "    2e − 31!",
        "    +",
        "    e − 12!",
        "    +",
        "    13!",
        "    + ... =",
        "    72",
        "    e − 6 ",
        "",
        "with e = 2.7182818... being Euler's constant.",
        "",
        "",
        "It can be shown that a(n) is of the form ",
        "    ",
        "    A(n) e + B(n)n!",
        "    for integers A(n) and B(n). ",
        "    ",
        "For example a(10) = ",
        "    ",
        "    328161643 e − 65269448610!",
        "    .",
        "",
        "Find A(109) + B(109) and give your answer mod 77 777 777."
      ]
    },
    {
      "id": "5900f4b71000cf542c50ffca",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 331: Cross flips",
      "tests": [
        "assert.strictEqual(euler331(), 467178235146843500, 'message: <code>euler331()</code> should return 467178235146843500.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler331() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler331();"
      ],
      "description": [
        "N×N disks are placed on a square game board. Each disk has a black side and white side.",
        "",
        "At each turn, you may choose a disk and flip all the disks in the same row and the same column as this disk: thus 2×N-1 disks are flipped. The game ends when all disks show their white side. The following example shows a game on a 5×5 board.",
        "",
        "",
        "",
        "It can be proven that 3 is the minimal number of turns to finish this game.",
        "",
        "The bottom left disk on the N×N board has coordinates (0,0);",
        "the bottom right disk has coordinates (N-1,0) and the top left disk has coordinates (0,N-1). ",
        "",
        "Let CN be the following configuration of a board with N×N disks:",
        "A disk at (x,y) satisfying , shows its black side; otherwise, it shows its white side. C5 is shown above.",
        "",
        "Let T(N) be the minimal number of turns to finish a game starting from configuration CN or 0 if configuration CN is unsolvable.",
        "We have shown that T(5)=3. You are also given that T(10)=29 and T(1 000)=395253.",
        "",
        "Find ."
      ]
    },
    {
      "id": "5900f4b91000cf542c50ffcb",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 332: Spherical triangles",
      "tests": [
        "assert.strictEqual(euler332(), 2717.751525, 'message: <code>euler332()</code> should return 2717.751525.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler332() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler332();"
      ],
      "description": [
        "A spherical triangle is a figure formed on the surface of a sphere by three great circular arcs intersecting pairwise in three vertices.",
        "",
        "",
        "",
        "",
        "Let C(r) be the sphere with the centre (0,0,0) and radius r.",
        "Let Z(r) be the set of points on the surface of C(r) with integer coordinates.",
        "Let T(r) be the set of spherical triangles with vertices in Z(r).",
        "Degenerate spherical triangles, formed by three points on the same great arc, are not included in T(r).",
        "Let A(r) be the area of the smallest spherical triangle in T(r).",
        "",
        "For example A(14) is 3.294040 rounded to six decimal places.",
        "",
        "Find  A(r). Give your answer rounded to six decimal places."
      ]
    },
    {
      "id": "5900f4b91000cf542c50ffcc",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 333: Special partitions",
      "tests": [
        "assert.strictEqual(euler333(), 3053105, 'message: <code>euler333()</code> should return 3053105.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler333() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler333();"
      ],
      "description": [
        "All positive integers can be partitioned in such a way that each and every term of the partition can be expressed as 2ix3j, where i,j ≥ 0.",
        "",
        "Let's consider only those such partitions where none of the terms can divide any of the other terms.",
        "For example, the partition of 17 = 2 + 6 + 9 = (21x30 + 21x31 + 20x32) would not be valid since 2 can divide 6. Neither would the partition 17 = 16 + 1 = (24x30 + 20x30) since 1 can divide 16. The only valid partition of 17 would be 8 + 9 = (23x30 + 20x32).",
        "",
        "Many integers have more than one valid partition, the first being 11 having the following two partitions.",
        "11 = 2 + 9 = (21x30 + 20x32)",
        "11 = 8 + 3 = (23x30 + 20x31)",
        "",
        "Let's define P(n) as the number of valid partitions of n. For example, P(11) = 2.",
        "",
        "Let's consider only the prime integers q which would have a single valid partition such as P(17).",
        "",
        "The sum of the primes q <100 such that P(q)=1 equals 233.",
        "",
        "Find the sum of the primes q <1000000 such that P(q)=1."
      ]
    },
    {
      "id": "5900f4ba1000cf542c50ffcd",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 334: Spilling the beans",
      "tests": [
        "assert.strictEqual(euler334(), 150320021261690850, 'message: <code>euler334()</code> should return 150320021261690850.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler334() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler334();"
      ],
      "description": [
        "In Plato's heaven, there exist an infinite number of bowls in a straight line.",
        "Each bowl either contains some or none of a finite number of beans.",
        "A child plays a game, which allows only one kind of move: removing two beans from any bowl, and putting one in each of the two adjacent bowls. The game ends when each bowl contains either one or no beans.",
        "",
        "For example, consider two adjacent bowls containing 2 and 3 beans respectively, all other bowls being empty. The following eight moves will finish the game:",
        "",
        "",
        "",
        "You are given the following sequences:",
        "      t0 = 123456.",
        "   ",
        "",
        "      ti = ",
        "   ",
        "   ",
        "   ",
        "   ",
        "      ",
        "         ti-12",
        "      ",
        "         ,",
        "      ",
        "      ",
        "      ",
        "         if ti-1 is even",
        "      ",
        "      ",
        "      ",
        "         ti-12",
        "      ",
        "         ",
        "      ",
        "         926252, ",
        "      ",
        "      ",
        "         if ti-1 is odd",
        "      ",
        "      ",
        "",
        "   ",
        "   ",
        "      where ⌊x⌋ is the floor function",
        "   ",
        "",
        "   ",
        "   ",
        "      and  is the bitwise XOR operator.",
        "   ",
        "",
        "      bi = ( ti mod 211) + 1.",
        "   ",
        "The first two terms of the last sequence are b1 = 289 and b2 = 145.",
        "If we start with b1 and b2 beans in two adjacent bowls, 3419100 moves would be required to finish the game.",
        "",
        "Consider now 1500 adjacent bowls containing b1, b2,..., b1500 beans respectively, all other bowls being empty. Find how many moves it takes before the game ends."
      ]
    },
    {
      "id": "5900f4bd1000cf542c50ffce",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 335: Gathering the beans",
      "tests": [
        "assert.strictEqual(euler335(), 5032316, 'message: <code>euler335()</code> should return 5032316.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler335() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler335();"
      ],
      "description": [
        "Whenever Peter feels bored, he places some bowls, containing one bean each, in a circle. After this, he takes all the beans out of a certain bowl and drops them one by one in the bowls going clockwise. He repeats this, starting from the bowl he dropped the last bean in, until the initial situation appears again. For example with 5 bowls he acts as follows:",
        "",
        "",
        "",
        "So with 5 bowls it takes Peter 15 moves to return to the initial situation.",
        "",
        "Let M(x) represent the number of moves required to return to the initial situation, starting with x bowls. Thus, M(5) = 15. It can also be verified that M(100) = 10920.",
        "",
        "Find M(2k+1). Give your answer modulo 79."
      ]
    },
    {
      "id": "5900f4bd1000cf542c50ffcf",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 336: Maximix Arrangements",
      "tests": [
        "assert.strictEqual(euler336(), CAGBIHEFJDK, 'message: <code>euler336()</code> should return CAGBIHEFJDK.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler336() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler336();"
      ],
      "description": [
        "A train is used to transport four carriages in the order: ABCD. However, sometimes when the train arrives to collect the carriages they are not in the correct order. ",
        "To rearrange the carriages they are all shunted on to a large rotating turntable. After the carriages are uncoupled at a specific point the train moves off the turntable pulling the carriages still attached with it. The remaining carriages are rotated 180 degrees. All of the carriages are then rejoined and this process is repeated as often as necessary in order to obtain the least number of uses of the turntable.",
        "Some arrangements, such as ADCB, can be solved easily: the carriages are separated between A and D, and after DCB are rotated the correct order has been achieved.",
        "",
        "However, Simple Simon, the train driver, is not known for his efficiency, so he always solves the problem by initially getting carriage A in the correct place, then carriage B, and so on.",
        "",
        "Using four carriages, the worst possible arrangements for Simon, which we shall call maximix arrangements, are DACB and DBAC; each requiring him five rotations (although, using the most efficient approach, they could be solved using just three rotations). The process he uses for DACB is shown below.",
        "",
        "",
        "",
        "",
        "It can be verified that there are 24 maximix arrangements for six carriages, of which the tenth lexicographic maximix arrangement is DFAECB.",
        "",
        "Find the 2011th lexicographic maximix arrangement for eleven carriages."
      ]
    },
    {
      "id": "5900f4be1000cf542c50ffd0",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 337: Totient Stairstep Sequences",
      "tests": [
        "assert.strictEqual(euler337(), 85068035, 'message: <code>euler337()</code> should return 85068035.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler337() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler337();"
      ],
      "description": [
        "Let {a1, a2,..., an} be an integer sequence of length n such that:",
        "a1 = 6",
        "for all 1 ≤ i < n : φ(ai) < φ(ai+1) < ai < ai+11",
        "Let S(N) be the number of such sequences with an ≤ N.",
        "For example, S(10) = 4: {6}, {6, 8}, {6, 8, 9} and {6, 10}.",
        "We can verify that S(100) = 482073668 and S(10 000) mod 108 = 73808307.",
        "",
        "Find S(20 000 000) mod 108.",
        "",
        "1 φ denotes Euler's totient function."
      ]
    },
    {
      "id": "5900f4be1000cf542c50ffd1",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 338: Cutting Rectangular Grid Paper",
      "tests": [
        "assert.strictEqual(euler338(), 15614292, 'message: <code>euler338()</code> should return 15614292.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler338() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler338();"
      ],
      "description": [
        "A rectangular sheet of grid paper with integer dimensions w × h is given. Its grid spacing is 1.",
        "When we cut the sheet along the grid lines into two pieces and rearrange those pieces without overlap, we can make new rectangles with different dimensions.",
        "For example, from a sheet with dimensions 9 × 4 , we can make rectangles with dimensions 18 × 2, 12 × 3 and 6 × 6 by cutting and rearranging as below:",
        "",
        "",
        "",
        "",
        "Similarly, from a sheet with dimensions 9 × 8 , we can make rectangles with dimensions 18 × 4 and 12 × 6 .",
        "",
        "For a pair w and h, let F(w,h) be the number of distinct rectangles that can be made from a sheet with dimensions w × h .",
        "For example, F(2,1) = 0, F(2,2) = 1, F(9,4) = 3 and F(9,8) = 2. ",
        "Note that rectangles congruent to the initial one are not counted in F(w,h).",
        "Note also that rectangles with dimensions w × h and dimensions h × w are not considered distinct.",
        "",
        "For an integer N, let G(N) be the sum of F(w,h) for all pairs w and h which satisfy 0 < h ≤ w ≤ N.",
        "We can verify that G(10) = 55, G(103) = 971745 and G(105) = 9992617687.",
        "",
        "Find G(1012). Give your answer modulo 108."
      ]
    },
    {
      "id": "5900f4c01000cf542c50ffd2",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 339: Peredur fab Efrawg",
      "tests": [
        "assert.strictEqual(euler339(), 19823.542204, 'message: <code>euler339()</code> should return 19823.542204.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler339() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler339();"
      ],
      "description": [
        "\"And he came towards a valley, through which ran a river; and the borders of the valley were wooded, and on each side of the river were level meadows. And on one side of the river he saw a flock of white sheep, and on the other a flock of black sheep. And whenever one of the white sheep bleated, one of the black sheep would cross over and become white; and when one of the black sheep bleated, one of the white sheep would cross over and become black.\"en.wikisource.org",
        "",
        "",
        "",
        "Initially each flock consists of n sheep. Each sheep (regardless of colour) is equally likely to be the next sheep to bleat. After a sheep has bleated and a sheep from the other flock has crossed over, Peredur may remove a number of white sheep in order to maximize the expected final number of black sheep. Let E(n) be the expected final number of black sheep if Peredur uses an optimal strategy.",
        "",
        "",
        "",
        "You are given that E(5) = 6.871346 rounded to 6 places behind the decimal point.",
        "Find E(10 000) and give your answer rounded to 6 places behind the decimal point."
      ]
    },
    {
      "id": "5900f4c21000cf542c50ffd4",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 340: Crazy Function",
      "tests": [
        "assert.strictEqual(euler340(), 291504964, 'message: <code>euler340()</code> should return 291504964.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler340() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler340();"
      ],
      "description": [
        "For fixed integers a, b, c, define the crazy function F(n) as follows:",
        "F(n) = n - c for all n > b ",
        "F(n) = F(a + F(a + F(a + F(a + n)))) for all n ≤ b.",
        "",
        "",
        "Also, define S(a, b, c) = .",
        "",
        "",
        "For example, if a = 50, b = 2000 and c = 40, then F(0) = 3240 and F(2000) = 2040.",
        "Also, S(50, 2000, 40) = 5204240.",
        "",
        "",
        "Find the last 9 digits of S(217, 721, 127)."
      ]
    },
    {
      "id": "5900f4c11000cf542c50ffd3",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 341: Golomb's self-describing sequence",
      "tests": [
        "assert.strictEqual(euler341(), 56098610614277016, 'message: <code>euler341()</code> should return 56098610614277016.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler341() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler341();"
      ],
      "description": [
        "The Golomb's self-describing sequence {G(n)} is the only nondecreasing sequence of natural numbers such that n appears exactly G(n) times in the sequence. The values of G(n) for the first few n are",
        "",
        "",
        "n123456789101112131415…G(n)122334445556666…",
        "",
        "You are given that G(103) = 86, G(106) = 6137.",
        "You are also given that ΣG(n3) = 153506976 for 1 ≤ n < 103.",
        "",
        "Find ΣG(n3) for 1 ≤ n < 106."
      ]
    },
    {
      "id": "5900f4c31000cf542c50ffd5",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 342: The totient of a square is a cube",
      "tests": [
        "assert.strictEqual(euler342(), 5943040885644, 'message: <code>euler342()</code> should return 5943040885644.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler342() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler342();"
      ],
      "description": [
        "Consider the number 50.",
        "502 = 2500 = 22 × 54, so φ(2500) = 2 × 4 × 53 = 8 × 53 = 23 × 53. 1",
        "So 2500 is a square and  φ(2500) is a cube.",
        "",
        "",
        "Find the sum of all numbers n, 1 &lt n < 1010 such that φ(n2) is a cube.",
        "",
        "",
        "1 φ denotes Euler's totient function."
      ]
    },
    {
      "id": "5900f4c41000cf542c50ffd6",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 343: Fractional Sequences",
      "tests": [
        "assert.strictEqual(euler343(), 269533451410884200, 'message: <code>euler343()</code> should return 269533451410884200.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler343() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler343();"
      ],
      "description": [
        "For any positive integer k, a finite sequence ai of fractions xi/yi is defined by:",
        "a1 = 1/k and",
        "ai = (xi-1+1)/(yi-1-1) reduced to lowest terms for i>1.",
        "When ai reaches some integer n, the sequence stops. (That is, when yi=1.)",
        "Define f(k) = n. ",
        "For example, for k = 20:",
        "",
        "",
        "",
        "1/20 → 2/19 → 3/18 = 1/6 → 2/5 → 3/4 → 4/3 → 5/2 → 6/1 = 6",
        "",
        "",
        "",
        "So f(20) = 6.",
        "",
        "",
        "",
        "Also f(1) = 1, f(2) = 2, f(3) = 1 and Σf(k3) = 118937 for 1 ≤ k ≤ 100.",
        "",
        "",
        "",
        "Find Σf(k3) for 1 ≤ k ≤ 2×106."
      ]
    },
    {
      "id": "5900f4c51000cf542c50ffd7",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 344: Silver dollar game",
      "tests": [
        "assert.strictEqual(euler344(), 65579304332, 'message: <code>euler344()</code> should return 65579304332.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler344() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler344();"
      ],
      "description": [
        "One variant of N.G. de Bruijn's silver dollar game can be described as follows:",
        "",
        "On a strip of squares a number of coins are placed, at most one coin per square. Only one coin, called the silver dollar, has any value. Two players take turns making moves. At each turn a player must make either a regular or a special move.",
        "",
        "A regular move consists of selecting one coin and moving it one or more squares to the left. The coin cannot move out of the strip or jump on or over another coin.",
        "",
        "Alternatively, the player can choose to make the special move of pocketing the leftmost coin rather than making a regular move. If no regular moves are possible, the player is forced to pocket the leftmost coin.",
        "",
        "The winner is the player who pockets the silver dollar.",
        "",
        "",
        "",
        "",
        "",
        "A winning configuration is an arrangement of coins on the strip where the first player can force a win no matter what the second player does.",
        "",
        "Let W(n,c) be the number of winning configurations for a strip of n squares, c worthless coins and one silver dollar.",
        "",
        "You are given that W(10,2) = 324 and W(100,10) = 1514704946113500.",
        "",
        "Find W(1 000 000, 100) modulo the semiprime 1000 036 000 099 (= 1 000 003 · 1 000 033)."
      ]
    },
    {
      "id": "5900f4c81000cf542c50ffda",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 345: Matrix Sum",
      "tests": [
        "assert.strictEqual(euler345(), 13938, 'message: <code>euler345()</code> should return 13938.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler345() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler345();"
      ],
      "description": [
        "We define the Matrix Sum of a matrix as the maximum sum of matrix elements with each element being the only one in his row and column. For example, the Matrix Sum of the matrix below equals 3315 ( = 863 + 383 + 343 + 959 + 767):",
        "",
        "",
        "  7  53 183 439 863",
        "497 383 563  79 973",
        "287  63 343 169 583",
        "627 343 773 959 943767 473 103 699 303",
        "",
        "",
        "Find the Matrix Sum of:",
        "",
        "  7  53 183 439 863 497 383 563  79 973 287  63 343 169 583",
        "627 343 773 959 943 767 473 103 699 303 957 703 583 639 913",
        "447 283 463  29  23 487 463 993 119 883 327 493 423 159 743",
        "217 623   3 399 853 407 103 983  89 463 290 516 212 462 350",
        "960 376 682 962 300 780 486 502 912 800 250 346 172 812 350",
        "870 456 192 162 593 473 915  45 989 873 823 965 425 329 803",
        "973 965 905 919 133 673 665 235 509 613 673 815 165 992 326",
        "322 148 972 962 286 255 941 541 265 323 925 281 601  95 973",
        "445 721  11 525 473  65 511 164 138 672  18 428 154 448 848",
        "414 456 310 312 798 104 566 520 302 248 694 976 430 392 198",
        "184 829 373 181 631 101 969 613 840 740 778 458 284 760 390",
        "821 461 843 513  17 901 711 993 293 157 274  94 192 156 574",
        " 34 124   4 878 450 476 712 914 838 669 875 299 823 329 699",
        "815 559 813 459 522 788 168 586 966 232 308 833 251 631 107",
        "813 883 451 509 615  77 281 613 459 205 380 274 302  35 805"
      ]
    },
    {
      "id": "5900f4c71000cf542c50ffd8",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 346: Strong Repunits",
      "tests": [
        "assert.strictEqual(euler346(), 336108797689259260, 'message: <code>euler346()</code> should return 336108797689259260.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler346() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler346();"
      ],
      "description": [
        "The number 7 is special, because 7 is 111 written in base 2, and 11 written in base 6 (i.e. 710 = 116 = 1112). In other words, 7 is a repunit in at least two bases b > 1. ",
        "",
        "",
        "We shall call a positive integer with this property a strong repunit. It can be verified that there are 8 strong repunits below 50:  {1,7,13,15,21,31,40,43}. Furthermore, the sum of all strong repunits below 1000 equals 15864.",
        "",
        "Find the sum of all strong repunits below 1012."
      ]
    },
    {
      "id": "5900f4c81000cf542c50ffd9",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 347: Largest integer divisible by two primes",
      "tests": [
        "assert.strictEqual(euler347(), 11109800204052, 'message: <code>euler347()</code> should return 11109800204052.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler347() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler347();"
      ],
      "description": [
        "The largest integer ≤ 100 that is only divisible by both the primes 2 and 3 is 96, as 96=32*3=25*3.",
        "For two distinct primes p and q let M(p,q,N) be the largest positive integer ≤N only divisible",
        "by both p and q and M(p,q,N)=0 if such a positive integer does not exist.",
        "",
        "",
        "E.g. M(2,3,100)=96. ",
        "M(3,5,100)=75 and not 90 because 90 is divisible by 2 ,3 and 5.",
        "Also M(2,73,100)=0 because there does not exist a positive integer ≤ 100 that is divisible by both 2 and 73.",
        "",
        "",
        "Let S(N) be the sum of all distinct M(p,q,N).",
        "S(100)=2262.",
        "",
        "",
        "Find S(10 000 000)."
      ]
    },
    {
      "id": "5900f4c81000cf542c50ffdb",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 348: Sum of a square and a cube",
      "tests": [
        "assert.strictEqual(euler348(), 1004195061, 'message: <code>euler348()</code> should return 1004195061.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler348() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler348();"
      ],
      "description": [
        "Many numbers can be expressed as the sum of a square and a cube. Some of them in more than one way.",
        "",
        "Consider the palindromic numbers that can be expressed as the sum of a square and a cube, both greater than 1, in exactly 4 different ways.",
        "For example, 5229225 is a palindromic number and it can be expressed in exactly 4 different ways:",
        "22852 + 203",
        "22232 + 663",
        "18102 + 1253",
        "11972 + 1563",
        " ",
        "Find the sum of the five smallest such palindromic numbers."
      ]
    },
    {
      "id": "5900f4ca1000cf542c50ffdc",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 349: Langton's ant",
      "tests": [
        "assert.strictEqual(euler349(), 115384615384614940, 'message: <code>euler349()</code> should return 115384615384614940.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler349() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler349();"
      ],
      "description": [
        "An ant moves on a regular grid of squares that are coloured either black or white. ",
        "The ant is always oriented in one of the cardinal directions (left, right, up or down) and moves from square to adjacent square according to the following rules:",
        "- if it is on a black square, it flips the color of the square to white, rotates 90 degrees counterclockwise and moves forward one square.",
        "- if it is on a white square, it flips the color of the square to black, rotates 90 degrees clockwise and moves forward one square.",
        "",
        "Starting with a grid that is entirely white, how many squares are black after 1018 moves of the ant?"
      ]
    },
    {
      "id": "5900f4cb1000cf542c50ffdd",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 350: Constraining the least greatest and the greatest least",
      "tests": [
        "assert.strictEqual(euler350(), 84664213, 'message: <code>euler350()</code> should return 84664213.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler350() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler350();"
      ],
      "description": [
        "A list of size n is a sequence of n natural numbers. Examples are (2,4,6), (2,6,4), (10,6,15,6), and (11).",
        "",
        "The greatest common divisor, or gcd, of a list is the largest natural number that divides all entries of the list. Examples: gcd(2,6,4) = 2, gcd(10,6,15,6) = 1 and gcd(11) = 11.",
        "",
        "The least common multiple, or lcm, of a list is the smallest natural number divisible by each entry of the list. Examples: lcm(2,6,4) = 12, lcm(10,6,15,6) = 30 and lcm(11) = 11.",
        "",
        "Let f(G, L, N) be the number of lists of size N with gcd ≥ G and lcm ≤ L. For example:",
        "",
        "f(10, 100, 1) = 91.",
        "f(10, 100, 2) = 327.",
        "f(10, 100, 3) = 1135.",
        "f(10, 100, 1000) mod 1014 = 3286053.",
        "",
        "Find f(106, 1012, 1018) mod 1014."
      ]
    },
    {
      "id": "5900f4cb1000cf542c50ffde",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 351: Hexagonal orchards",
      "tests": [
        "assert.strictEqual(euler351(), 11762187201804552, 'message: <code>euler351()</code> should return 11762187201804552.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler351() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler351();"
      ],
      "description": [
        "A hexagonal orchard of order n is a triangular lattice made up of points within a regular hexagon with side n. The following is an example of a hexagonal orchard of order 5:",
        "",
        "",
        "",
        "",
        "",
        "",
        "Highlighted in green are the points which are hidden from the center by a point closer to it. It can be seen that for a hexagonal orchard of order 5, 30 points are hidden from the center.",
        "",
        "",
        "",
        "Let H(n) be the number of points hidden from the center in a hexagonal orchard of order n.",
        "",
        "",
        "",
        "H(5) = 30. H(10) = 138. H(1 000) = 1177848.",
        "",
        "",
        "",
        "Find H(100 000 000)."
      ]
    },
    {
      "id": "5900f4cd1000cf542c50ffdf",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 352: Blood tests",
      "tests": [
        "assert.strictEqual(euler352(), 378563.260589, 'message: <code>euler352()</code> should return 378563.260589.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler352() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler352();"
      ],
      "description": [
        "Each one of the 25 sheep in a flock must be tested for a rare virus, known to affect 2% of the sheep population.",
        "An accurate and extremely sensitive PCR test exists for blood samples, producing a clear positive / negative result, but it is very time-consuming and expensive.",
        "",
        "",
        "",
        "Because of the high cost, the vet-in-charge suggests that instead of performing 25 separate tests, the following procedure can be used instead:",
        "The sheep are split into 5 groups of 5 sheep in each group. ",
        "For each group, the 5 samples are mixed together and a single test is performed. Then,",
        "If the result is negative, all the sheep in that group are deemed to be virus-free.",
        "If the result is positive, 5 additional tests will be performed (a separate test for each animal) to determine the affected individual(s).",
        "",
        "Since the probability of infection for any specific animal is only 0.02, the first test (on the pooled samples) for each group will be:",
        "Negative (and no more tests needed) with probability 0.985 = 0.9039207968.",
        "Positive (5 additional tests needed) with probability 1 - 0.9039207968 = 0.0960792032.",
        "",
        "Thus, the expected number of tests for each group is 1 + 0.0960792032 × 5 = 1.480396016.",
        "Consequently, all 5 groups can be screened using an average of only 1.480396016 × 5 = 7.40198008 tests, which represents a huge saving of more than 70% !",
        "",
        "",
        "",
        "Although the scheme we have just described seems to be very efficient, it can still be improved considerably (always assuming that the test is sufficiently sensitive and that there are no adverse effects caused by mixing different samples). E.g.:",
        "We may start by running a test on a mixture of all the 25 samples. It can be verified that in about 60.35% of the cases this test will be negative, thus no more tests will be needed. Further testing will only be required for the remaining 39.65% of the cases.",
        "If we know that at least one animal in a group of 5 is infected and the first 4 individual tests come out negative, there is no need to run a test on the fifth animal (we know that it must be infected).",
        "We can try a different number of groups / different number of animals in each group, adjusting those numbers at each level so that the total expected number of tests will be minimised.",
        "",
        "To simplify the very wide range of possibilities, there is one restriction we place when devising the most cost-efficient testing scheme: whenever we start with a mixed sample, all the sheep contributing to that sample must be fully screened (i.e. a verdict of infected / virus-free must be reached for all of them) before we start examining any other animals.",
        "",
        "For the current example, it turns out that the most cost-efficient testing scheme (we'll call it the optimal strategy) requires an average of just 4.155452 tests!",
        "",
        "",
        "",
        "Using the optimal strategy, let T(s,p) represent the average number of tests needed to screen a flock of s sheep for a virus having probability p to be present in any individual.",
        "Thus, rounded to six decimal places, T(25, 0.02) = 4.155452 and T(25, 0.10) = 12.702124.",
        "",
        "",
        "",
        "Find ΣT(10000, p) for p=0.01, 0.02, 0.03, ... 0.50.",
        "Give your answer rounded to six decimal places."
      ]
    },
    {
      "id": "5900f4cd1000cf542c50ffe0",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 353: Risky moon",
      "tests": [
        "assert.strictEqual(euler353(), 1.2759860331, 'message: <code>euler353()</code> should return 1.2759860331.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler353() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler353();"
      ],
      "description": [
        "A moon could be described by the sphere C(r) with centre (0,0,0) and radius r. ",
        "",
        "",
        "",
        "There are stations on the moon at the points on the surface of C(r) with integer coordinates. The station at (0,0,r) is called North Pole station, the station at (0,0,-r) is called South Pole station.",
        "",
        "",
        "",
        "All stations are connected with each other via the shortest road on the great arc through the stations. A journey between two stations is risky. If d is the length of the road between two stations, (d/(π r))2 is a measure for the risk of the journey (let us call it the risk of the road). If the journey includes more than two stations, the risk of the journey is the sum of risks of the used roads.",
        "",
        "",
        "",
        "A direct journey from  the North Pole station to the South Pole station has the length πr and risk 1. The journey from the North Pole station to the South Pole station via (0,r,0) has the same length, but a smaller risk: (½πr/(πr))2+(½πr/(πr))2=0.5.",
        "",
        "",
        "",
        "The minimal risk of a journey from the North Pole station to the South Pole station on C(r) is M(r).",
        "",
        "",
        "",
        "You are given that M(7)=0.1784943998  rounded to 10 digits behind the decimal point. ",
        "",
        "",
        "",
        "Find ∑M(2n-1) for 1≤n≤15.",
        "",
        "",
        "",
        "Give your answer rounded to 10 digits behind the decimal point in the form a.bcdefghijk."
      ]
    },
    {
      "id": "5900f4cf1000cf542c50ffe1",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 354: Distances in a bee's honeycomb",
      "tests": [
        "assert.strictEqual(euler354(), 58065134, 'message: <code>euler354()</code> should return 58065134.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler354() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler354();"
      ],
      "description": [
        "Consider a honey bee's honeycomb where each cell is a perfect regular hexagon with side length 1.",
        "",
        "",
        "",
        "",
        "",
        "",
        "One particular cell is occupied by the queen bee.",
        "For a positive real number L, let B(L) count the cells with distance L from the queen bee cell (all distances are measured from centre to centre); you may assume that the honeycomb is large enough to accommodate for any distance we wish to consider. ",
        "For example, B(√3) = 6, B(√21) = 12 and B(111 111 111) = 54.",
        "",
        "Find the number of L ≤ 5·1011 such that B(L) = 450."
      ]
    },
    {
      "id": "5900f4d01000cf542c50ffe2",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 355: Maximal coprime subset",
      "tests": [
        "assert.strictEqual(euler355(), 1726545007, 'message: <code>euler355()</code> should return 1726545007.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler355() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler355();"
      ],
      "description": [
        "Define Co(n) to be the maximal possible sum of a set of mutually co-prime elements from {1, 2, ..., n}. For example Co(10) is 30 and hits that maximum on the subset {1, 5, 7, 8, 9}.",
        "",
        "",
        "",
        "You are given that Co(30) = 193 and Co(100) = 1356. ",
        "",
        "",
        "Find Co(200000)."
      ]
    },
    {
      "id": "5900f4d01000cf542c50ffe3",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 356: Largest roots of cubic polynomials",
      "tests": [
        "assert.strictEqual(euler356(), 28010159, 'message: <code>euler356()</code> should return 28010159.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler356() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler356();"
      ],
      "description": [
        "Let an be the largest real root of a polynomial g(x) = x3 - 2n·x2 + n.",
        "For example, a2 = 3.86619826...",
        "",
        "",
        "Find the last eight digits of.",
        "",
        "",
        "Note:  represents the floor function."
      ]
    },
    {
      "id": "5900f4d11000cf542c50ffe4",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 357: Prime generating integers",
      "tests": [
        "assert.strictEqual(euler357(), 1739023853137, 'message: <code>euler357()</code> should return 1739023853137.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler357() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler357();"
      ],
      "description": [
        "Consider the divisors of 30: 1,2,3,5,6,10,15,30.",
        "It can be seen that for every divisor d of 30, d+30/d is prime.",
        "",
        "",
        "Find the sum of all positive integers n not exceeding 100 000 000such that",
        "for every divisor d of n, d+n/d is prime."
      ]
    },
    {
      "id": "5900f4d21000cf542c50ffe5",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 358: Cyclic numbers",
      "tests": [
        "assert.strictEqual(euler358(), 3284144505, 'message: <code>euler358()</code> should return 3284144505.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler358() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler358();"
      ],
      "description": [
        "A cyclic number with n digits has a very interesting property:",
        "When it is multiplied by 1, 2, 3, 4, ... n, all the products have exactly the same digits, in the same order, but rotated in a circular fashion!",
        "",
        "",
        "",
        "The smallest cyclic number is the 6-digit number 142857 :",
        "142857 × 1 = 142857",
        "142857 × 2 = 285714",
        "142857 × 3 = 428571",
        "142857 × 4 = 571428",
        "142857 × 5 = 714285",
        "142857 × 6 = 857142  ",
        "",
        "",
        "",
        "The next cyclic number is 0588235294117647 with 16 digits :",
        "0588235294117647 × 1 = 0588235294117647",
        "0588235294117647 × 2 = 1176470588235294",
        "0588235294117647 × 3 = 1764705882352941",
        "...",
        "0588235294117647 × 16 = 9411764705882352",
        "",
        "",
        "",
        "Note that for cyclic numbers, leading zeros are important.",
        "",
        "",
        "",
        "There is only one cyclic number for which, the eleven leftmost digits are 00000000137 and the five rightmost digits are 56789 (i.e., it has the form 00000000137...56789 with an unknown number of digits in the middle). Find the sum of all its digits."
      ]
    },
    {
      "id": "5900f4d31000cf542c50ffe6",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 359: Hilbert's New Hotel",
      "tests": [
        "assert.strictEqual(euler359(), 40632119, 'message: <code>euler359()</code> should return 40632119.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler359() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler359();"
      ],
      "description": [
        "An infinite number of people (numbered 1, 2, 3, etc.) are lined up to get a room at Hilbert's newest infinite hotel. The hotel contains an infinite number of floors (numbered 1, 2, 3, etc.), and each floor contains an infinite number of rooms (numbered 1, 2, 3, etc.). ",
        "",
        "",
        "",
        "Initially the hotel is empty. Hilbert declares a rule on how the nth person is assigned a room: person n gets the first vacant room in the lowest numbered floor satisfying either of the following:",
        "the floor is empty",
        "the floor is not empty, and if the latest person taking a room in that floor is person m, then m + n is a perfect square",
        "",
        "Person 1 gets room 1 in floor 1 since floor 1 is empty.",
        "Person 2 does not get room 2 in floor 1 since 1 + 2 = 3 is not a perfect square.",
        "Person 2 instead gets room 1 in floor 2 since floor 2 is empty.",
        "Person 3 gets room 2 in floor 1 since 1 + 3 = 4 is a perfect square.",
        "",
        "",
        "",
        "Eventually, every person in the line gets a room in the hotel.",
        "",
        "",
        "",
        "Define P(f, r) to be n if person n occupies room r in floor f, and 0 if no person occupies the room. Here are a few examples:",
        "P(1, 1) = 1",
        "P(1, 2) = 3",
        "P(2, 1) = 2",
        "P(10, 20) = 440",
        "P(25, 75) = 4863",
        "P(99, 100) = 19454",
        "",
        "",
        "",
        "Find the sum of all P(f, r) for all positive f and r such that f × r = 71328803586048 and give the last 8 digits as your answer."
      ]
    },
    {
      "id": "5900f4d41000cf542c50ffe7",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 360: Scary Sphere",
      "tests": [
        "assert.strictEqual(euler360(), 878825614395267100, 'message: <code>euler360()</code> should return 878825614395267100.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler360() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler360();"
      ],
      "description": [
        "Given two points (x1,y1,z1) and (x2,y2,z2) in three dimensional space, the Manhattan distance  between those points is defined as  |x1-x2|+|y1-y2|+|z1-z2|.",
        "",
        "",
        "Let C(r) be a sphere with radius r and center in the origin O(0,0,0).",
        "Let I(r) be the set of all points with integer coordinates on the surface of C(r).",
        "Let S(r) be the sum of the Manhattan distances of all elements of I(r) to the origin O.",
        "",
        "",
        "E.g. S(45)=34518.",
        "",
        "",
        "Find S(1010)."
      ]
    },
    {
      "id": "5900f4d51000cf542c50ffe8",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 361: Subsequence of Thue-Morse sequence",
      "tests": [
        "assert.strictEqual(euler361(), 178476944, 'message: <code>euler361()</code> should return 178476944.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler361() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler361();"
      ],
      "description": [
        "The Thue-Morse sequence {Tn} is a binary sequence satisfying:",
        "T0 = 0",
        "T2n = Tn",
        "T2n+1 = 1 - Tn",
        "",
        "The first several terms of {Tn} are given as follows:",
        "01101001100101101001011001101001....",
        "",
        "",
        "",
        "We define {An} as the sorted sequence of integers such that the binary expression of each element appears as a subsequence in {Tn}.",
        "For example, the decimal number 18 is expressed as 10010 in binary. 10010 appears in {Tn} (T8 to T12), so 18 is an element of {An}.",
        "The decimal number 14 is expressed as 1110 in binary. 1110 never appears in {Tn}, so 14 is not an element of {An}.",
        "",
        "",
        "",
        "The first several terms of An are given as follows:",
        "n0123456789101112…An012345691011121318…",
        "",
        "",
        "",
        "We can also verify that A100 = 3251 and A1000 = 80852364498.",
        "",
        "",
        "",
        "Find the last 9 digits of ."
      ]
    },
    {
      "id": "5900f4d61000cf542c50ffe9",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 362: Squarefree factors",
      "tests": [
        "assert.strictEqual(euler362(), 457895958010, 'message: <code>euler362()</code> should return 457895958010.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler362() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler362();"
      ],
      "description": [
        "Consider the number 54.",
        "54 can be factored in 7 distinct ways into one or more factors larger than 1:",
        "54, 2×27, 3×18, 6×9, 3×3×6, 2×3×9 and 2×3×3×3.",
        "If we require that the factors are all squarefree only two ways remain: 3×3×6 and 2×3×3×3.",
        "",
        "",
        "Let's call Fsf(n) the number of ways n can be factored into one or more squarefree factors larger than 1, so",
        "Fsf(54)=2.",
        "",
        "",
        "Let S(n) be ∑Fsf(k) for k=2 to n.",
        "",
        "",
        "S(100)=193.",
        "",
        "",
        "Find S(10 000 000 000)."
      ]
    },
    {
      "id": "5900f4d91000cf542c50ffeb",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 363: Bézier Curves",
      "tests": [
        "assert.strictEqual(euler363(), 0.0000372091, 'message: <code>euler363()</code> should return 0.0000372091.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler363() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler363();"
      ],
      "description": [
        "A cubic Bézier curve is defined by four points: P0, P1, P2 and P3.",
        "",
        "",
        "",
        "The curve is constructed as follows:",
        "On the segments P0P1, P1P2 and P2P3 the points Q0,Q1 and Q2 are drawn such that",
        "P0Q0 / P0P1 = P1Q1 / P1P2 = P2Q2 / P2P3 = t (t in [0,1]).",
        "On the segments Q0Q1 and Q1Q2 the points R0 and R1 are drawn such that",
        "Q0R0  / Q0Q1 = Q1R1 / Q1Q2 = t for the same value of t.",
        "On the segment R0R1 the point B is drawn such that R0B / R0R1 = t for the same value of t.",
        "The Bézier curve defined by the points P0, P1, P2, P3 is the locus of B as Q0 takes all possible positions on the segment P0P1.",
        "(Please note that for all points the value of t is the same.)",
        "",
        "At this (external) web address you will find an applet that allows you to drag the points P0, P1, P2 and P3 to see what the Bézier curve (green curve) defined by those points looks like. You can also drag the point Q0 along the segment P0P1.",
        "",
        "From the construction it is clear that the Bézier curve will be tangent to the segments P0P1 in P0 and P2P3 in P3.",
        "",
        "A cubic Bézier curve with P0=(1,0), P1=(1,v), P2=(v,1) and P3=(0,1) is used to approximate a quarter circle.",
        "The value v > 0 is chosen such that the area enclosed by the lines OP0, OP3 and the curve is equal to π/4 (the area of the quarter circle).",
        "",
        "By how many percent does the length of the curve differ from the length of the quarter circle?",
        "That is, if L is the length of the curve, calculate  100 × L − π/2π/2Give your answer rounded to 10 digits behind the decimal point."
      ]
    },
    {
      "id": "5900f4d91000cf542c50ffea",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 364: Comfortable distance",
      "tests": [
        "assert.strictEqual(euler364(), 44855254, 'message: <code>euler364()</code> should return 44855254.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler364() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler364();"
      ],
      "description": [
        "There are N seats in a row. N people come after each other to fill the seats according to the following rules:",
        "If there is any seat whose adjacent seat(s) are not occupied take such a seat.",
        "If there is no such seat and there is any seat for which only one adjacent seat is occupied take such a seat.",
        "Otherwise take one of the remaining available seats. ",
        "",
        "Let T(N) be the number of possibilities that N seats are occupied by N people with the given rules. The following figure shows T(4)=8.",
        "",
        "",
        "",
        "",
        "",
        "We can verify that T(10) = 61632 and T(1 000) mod 100 000 007 = 47255094.",
        "Find T(1 000 000) mod 100 000 007."
      ]
    },
    {
      "id": "5900f4da1000cf542c50ffec",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 365: A huge binomial coefficient",
      "tests": [
        "assert.strictEqual(euler365(), 162619462356610300, 'message: <code>euler365()</code> should return 162619462356610300.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler365() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler365();"
      ],
      "description": [
        "The binomial coefficient C(1018,109) is a number with more than 9 billion (9×109) digits.",
        "",
        "",
        "Let M(n,k,m) denote the binomial coefficient C(n,k) modulo m.",
        "",
        "",
        "Calculate ∑M(1018,109,p*q*r) for 1000<p<q<r<5000 and p,q,r prime."
      ]
    },
    {
      "id": "5900f4da1000cf542c50ffed",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 366: Stone Game III",
      "tests": [
        "assert.strictEqual(euler366(), 88351299, 'message: <code>euler366()</code> should return 88351299.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler366() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler366();"
      ],
      "description": [
        "Two players, Anton and Bernhard, are playing the following game.",
        "There is one pile of n stones.",
        "The first player may remove any positive number of stones, but not the whole pile.",
        "Thereafter, each player may remove at most twice the number of stones his opponent took on the previous move.",
        "The player who removes the last stone wins.",
        "",
        "",
        "E.g. n=5",
        "If the first player takes anything more than one stone the next player will be able to take all remaining stones.",
        "If the first player takes one stone, leaving four, his opponent will take also one stone, leaving three stones.",
        "The first player cannot take all three because he may take at most 2x1=2 stones. So let's say he takes also one stone, leaving 2. The second player can take the two remaining stones and wins.",
        "So 5 is a losing position for the first player.",
        "For some winning positions there is more than one possible move for the first player.",
        "E.g. when n=17 the first player can remove one or four stones.",
        "",
        "",
        "Let M(n) be the maximum number of stones the first player can take from a winning position at his first turn and M(n)=0 for any other position.",
        "",
        "",
        "∑M(n) for n≤100 is 728.",
        "",
        "",
        "Find  ∑M(n) for n≤1018.",
        "Give your answer modulo 108."
      ]
    },
    {
      "id": "5900f4db1000cf542c50ffee",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 367: Bozo sort",
      "tests": [
        "assert.strictEqual(euler367(), 48271207, 'message: <code>euler367()</code> should return 48271207.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler367() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler367();"
      ],
      "description": [
        "Bozo sort, not to be confused with the slightly less efficient bogo sort, consists out of checking if the input sequence is sorted and if not swapping randomly two elements. This is repeated until eventually the sequence is sorted.",
        "",
        "",
        "If we consider all permutations of the first 4 natural numbers as input the expectation value of the number of swaps, averaged over all 4! input sequences is 24.75.",
        "The already sorted sequence takes 0 steps. ",
        "",
        "",
        "In this problem we consider the following variant on bozo sort.",
        "If the sequence is not in order we pick three elements at random and shuffle these three elements randomly.",
        "All 3!=6 permutations of those three elements are equally likely. ",
        "The already sorted sequence will take 0 steps.",
        "If we consider all permutations of the first 4 natural numbers as input the expectation value of the number of shuffles, averaged over all 4! input sequences is 27.5. ",
        "Consider as input sequences the permutations of the first 11 natural numbers.",
        "Averaged over all 11! input sequences, what is the expected number of shuffles this sorting algorithm will perform?",
        "",
        "",
        "Give your answer rounded to the nearest integer."
      ]
    },
    {
      "id": "5900f4dd1000cf542c50ffef",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 368: A Kempner-like series",
      "tests": [
        "assert.strictEqual(euler368(), 253.6135092068, 'message: <code>euler368()</code> should return 253.6135092068.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler368() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler368();"
      ],
      "description": [
        "The  harmonic series  $1 + \\dfrac{1}{2} + \\dfrac{1}{3} + \\dfrac{1}{4} + ...$ is well known to be divergent.",
        "",
        "If we however omit from this series every term where the denominator has a 9 in it, the series remarkably enough converges to approximately 22.9206766193.",
        "This modified harmonic series is called the Kempner series.",
        "",
        "Let us now consider another modified harmonic series by omitting from the harmonic series every term where the denominator has 3 or more equal consecutive digits.",
        "One can verify that out of the first 1200 terms of the harmonic series, only 20 terms will be omitted.",
        "These 20 omitted terms are:",
        "$$\\dfrac{1}{111}, \\dfrac{1}{222}, \\dfrac{1}{333}, \\dfrac{1}{444}, \\dfrac{1}{555}, \\dfrac{1}{666}, \\dfrac{1}{777}, \\dfrac{1}{888}, \\dfrac{1}{999}, \\dfrac{1}{1000}, \\dfrac{1}{1110}, \\\\\\ \\dfrac{1}{1111}, \\dfrac{1}{1112}, \\dfrac{1}{1113}, \\dfrac{1}{1114}, \\dfrac{1}{1115}, \\dfrac{1}{1116}, \\dfrac{1}{1117}, \\dfrac{1}{1118}, \\dfrac{1}{1119}$$",
        "",
        "This series converges as well.",
        "",
        "Find the value the series converges to.",
        "Give your answer rounded to 10 digits behind the decimal point."
      ]
    },
    {
      "id": "5900f4de1000cf542c50fff0",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 369: Badugi",
      "tests": [
        "assert.strictEqual(euler369(), 862400558448, 'message: <code>euler369()</code> should return 862400558448.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler369() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler369();"
      ],
      "description": [
        "In a standard 52 card deck of playing cards, a set of 4 cards is a Badugi if it contains 4 cards with no pairs and no two cards of the same suit.",
        "",
        "Let f(n) be the number of ways to choose n cards with a 4 card subset that is a Badugi.  For example, there are 2598960 ways to choose five cards from a standard 52 card deck, of which 514800 contain a 4 card subset that is a Badugi, so f(5) = 514800.",
        "",
        "Find ∑f(n)  for 4 ≤ n ≤ 13."
      ]
    },
    {
      "id": "5900f4de1000cf542c50fff1",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 370: Geometric triangles",
      "tests": [
        "assert.strictEqual(euler370(), 41791929448408, 'message: <code>euler370()</code> should return 41791929448408.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler370() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler370();"
      ],
      "description": [
        "Let us define a geometric triangle as an integer sided triangle with sides a ≤ b ≤ c so that its sides form a geometric progression, i.e. b2 = a · c .  ",
        "",
        "An example of such a geometric triangle is the triangle with sides a = 144, b = 156 and c = 169.",
        "",
        "There are 861805 geometric triangles with perimeter ≤ 106 .",
        "",
        "How many geometric triangles exist with perimeter ≤ 2.5·1013 ?"
      ]
    },
    {
      "id": "5900f4e01000cf542c50fff2",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 371: Licence plates",
      "tests": [
        "assert.strictEqual(euler371(), 40.66368097, 'message: <code>euler371()</code> should return 40.66368097.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler371() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler371();"
      ],
      "description": [
        "Oregon licence plates consist of three letters followed by a three digit number (each digit can be from [0..9]).",
        "While driving to work Seth plays the following game:",
        "Whenever the numbers of two licence plates seen on his trip add to 1000 that's a win.",
        "",
        "",
        "E.g. MIC-012 and HAN-988 is a win and RYU-500 and SET-500 too. (as long as he sees them in the same trip). ",
        "",
        "",
        "Find the expected number of plates he needs to see for a win.",
        "Give your answer rounded to 8 decimal places behind the decimal point.",
        "",
        "",
        "Note: We assume that each licence plate seen is equally likely to have any three digit number on it."
      ]
    },
    {
      "id": "5900f4e11000cf542c50fff3",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 372: Pencils of rays",
      "tests": [
        "assert.strictEqual(euler372(), 301450082318807040, 'message: <code>euler372()</code> should return 301450082318807040.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler372() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler372();"
      ],
      "description": [
        "Let R(M, N) be the number of lattice points (x, y) which satisfy M<x≤N, M<y≤N and  is odd.",
        "We can verify that R(0, 100) = 3019 and R(100, 10000) = 29750422.",
        "Find R(2·106, 109).",
        "",
        "",
        "",
        "Note:  represents the floor function."
      ]
    },
    {
      "id": "5900f4e11000cf542c50fff4",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 373: Circumscribed Circles",
      "tests": [
        "assert.strictEqual(euler373(), 727227472448913, 'message: <code>euler373()</code> should return 727227472448913.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler373() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler373();"
      ],
      "description": [
        "Every triangle has a circumscribed circle that goes through the three vertices.",
        "Consider all integer sided triangles for which the radius of the circumscribed circle is integral as well.",
        "",
        "",
        "Let S(n) be the sum of the radii of the circumscribed circles of all such triangles for which the radius does not exceed n.",
        "",
        "S(100)=4950 and S(1200)=1653605.",
        "",
        "",
        "Find S(107)."
      ]
    },
    {
      "id": "5900f4e51000cf542c50fff6",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 374: Maximum Integer Partition Product",
      "tests": [
        "assert.strictEqual(euler374(), 334420941, 'message: <code>euler374()</code> should return 334420941.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler374() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler374();"
      ],
      "description": [
        "An integer partition of a number n is a way of writing n as a sum of positive integers.",
        "",
        "Partitions that differ only in the order of their summands are considered the same.",
        "A partition of n into distinct parts is a partition of n in which every part occurs at most once.",
        "",
        "The partitions of 5 into distinct parts are:",
        "5, 4+1 and 3+2.",
        "",
        "Let f(n) be the maximum product of the parts of any such partition of n into distinct parts and let m(n) be the number of elements of any such partition of n with that product.",
        "",
        "So f(5)=6 and m(5)=2.",
        "",
        "For n=10 the partition with the largest product is 10=2+3+5, which gives f(10)=30 and m(10)=3.",
        "And their product, f(10)·m(10) = 30·3 = 90",
        "",
        "It can be verified that",
        "∑f(n)·m(n) for 1 ≤ n ≤ 100 = 1683550844462.",
        "",
        "Find ∑f(n)·m(n) for 1 ≤ n ≤ 1014.",
        "Give your answer modulo 982451653, the 50 millionth prime."
      ]
    },
    {
      "id": "5900f4e41000cf542c50fff5",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 375: Minimum of subsequences",
      "tests": [
        "assert.strictEqual(euler375(), 7435327983715286000, 'message: <code>euler375()</code> should return 7435327983715286000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler375() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler375();"
      ],
      "description": [
        "Let Sn be an integer sequence produced with the following pseudo-random number generator:",
        "S0",
        "    = ",
        "    290797 ",
        "  Sn+1",
        "    = ",
        "    Sn2 mod 50515093",
        "  ",
        "",
        "",
        "Let A(i, j) be the minimum of the numbers Si, Si+1, ... , Sj for i ≤ j.",
        "Let M(N) = ΣA(i, j) for 1 ≤ i ≤ j ≤ N.",
        "We can verify that M(10) = 432256955 and M(10 000) = 3264567774119.",
        "",
        "",
        "Find M(2 000 000 000)."
      ]
    },
    {
      "id": "5900f4e51000cf542c50fff7",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 376: Nontransitive sets of dice",
      "tests": [
        "assert.strictEqual(euler376(), 973059630185670, 'message: <code>euler376()</code> should return 973059630185670.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler376() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler376();"
      ],
      "description": [
        "Consider the following set of dice with nonstandard pips:",
        "",
        "",
        "",
        "Die A: 1 4 4 4 4 4",
        "Die B: 2 2 2 5 5 5",
        "Die C: 3 3 3 3 3 6",
        "",
        "",
        "A game is played by two players picking a die in turn and rolling it. The player who rolls the highest value wins.",
        "",
        "",
        "",
        "If the first player picks die A and the second player picks die B we get",
        "P(second player wins) = 7/12 > 1/2",
        "",
        "",
        "If the first player picks die B and the second player picks die C we get",
        "P(second player wins) = 7/12 > 1/2",
        "",
        "",
        "If the first player picks die C and the second player picks die A we get",
        "P(second player wins) = 25/36 > 1/2",
        "",
        "",
        "So whatever die the first player picks, the second player can pick another die and have a larger than 50% chance of winning.",
        "A set of dice having this property is called a nontransitive set of dice.",
        "",
        "",
        "",
        "We wish to investigate how many sets of nontransitive dice exist. We will assume the following conditions:There are three six-sided dice with each side having between 1 and N pips, inclusive.",
        "Dice with the same set of pips are equal, regardless of which side on the die the pips are located.",
        "The same pip value may appear on multiple dice; if both players roll the same value neither player wins.",
        "The sets of dice {A,B,C}, {B,C,A} and {C,A,B} are the same set.",
        "",
        "For N = 7 we find there are 9780 such sets.",
        "How many are there for N = 30 ?"
      ]
    },
    {
      "id": "5900f4e51000cf542c50fff8",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 377: Sum of digits, experience 13",
      "tests": [
        "assert.strictEqual(euler377(), 732385277, 'message: <code>euler377()</code> should return 732385277.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler377() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler377();"
      ],
      "description": [
        "There are 16 positive integers that do not have a zero in their digits and that have a digital sum equal to 5, namely: ",
        "5, 14, 23, 32, 41, 113, 122, 131, 212, 221, 311, 1112, 1121, 1211, 2111 and 11111.",
        "Their sum is 17891.",
        "",
        "",
        "Let f(n) be the sum of all positive integers that do not have a zero in their digits and have a digital sum equal to n.",
        "",
        "",
        "Find $\\displaystyle \\sum_{i=1}^{17} f(13^i)$.",
        "Give the last 9 digits as your answer."
      ]
    },
    {
      "id": "5900f4e61000cf542c50fff9",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 378: Triangle Triples",
      "tests": [
        "assert.strictEqual(euler378(), 147534623725724700, 'message: <code>euler378()</code> should return 147534623725724700.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler378() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler378();"
      ],
      "description": [
        "Let T(n) be the nth triangle number, so T(n) =",
        "",
        "",
        "n (n+1)2",
        "",
        ".",
        "",
        "",
        "Let dT(n) be the number of divisors of T(n).",
        "E.g.:",
        "T(7) = 28 and dT(7) = 6.",
        "",
        "",
        "Let Tr(n) be the number of triples (i, j, k) such that 1 ≤ i < j < k ≤ n and dT(i) > dT(j) > dT(k).",
        "Tr(20) = 14, Tr(100) = 5772 and Tr(1000) = 11174776.",
        "",
        "",
        "Find Tr(60 000 000). ",
        "Give the last 18 digits of your answer."
      ]
    },
    {
      "id": "5900f4e81000cf542c50fffa",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 379: Least common multiple count",
      "tests": [
        "assert.strictEqual(euler379(), 132314136838185, 'message: <code>euler379()</code> should return 132314136838185.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler379() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler379();"
      ],
      "description": [
        "Let f(n) be the number of couples (x,y) with x and y positive integers, x ≤ y and the least common multiple of x and y equal to n.",
        "",
        "",
        "Let g be the summatory function of f, i.e.: ",
        "g(n) = ∑ f(i)  for 1 ≤ i ≤ n.",
        "",
        "",
        "You are given that g(106) = 37429395.",
        "",
        "",
        "Find g(1012)."
      ]
    },
    {
      "id": "5900f4e81000cf542c50fffb",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 380: Amazing Mazes!",
      "tests": [
        "assert.strictEqual(euler380(), Infinity, 'message: <code>euler380()</code> should return Infinity.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler380() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler380();"
      ],
      "description": [
        "An m×n maze is an m×n rectangular grid with walls placed between grid cells such that there is exactly one path from the top-left square to any other square. The following are examples of a 9×12 maze and a 15×20 maze:",
        "",
        "",
        "",
        "",
        "Let C(m,n) be the number of distinct m×n mazes. Mazes which can be formed by rotation and reflection from another maze are considered distinct.",
        "",
        "",
        "It can be verified that C(1,1) = 1, C(2,2) = 4, C(3,4) = 2415, and C(9,12) = 2.5720e46 (in scientific notation rounded to 5 significant digits).",
        "Find C(100,500) and write your answer in scientific notation rounded to 5 significant digits.",
        "",
        "",
        "When giving your answer, use a lowercase e to separate mantissa and exponent.",
        "E.g. if the answer is 1234567891011 then the answer format would be 1.2346e12."
      ]
    },
    {
      "id": "5900f4ea1000cf542c50fffc",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 381: (prime-k) factorial",
      "tests": [
        "assert.strictEqual(euler381(), 139602943319822, 'message: <code>euler381()</code> should return 139602943319822.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler381() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler381();"
      ],
      "description": [
        "For a prime p let S(p) = (∑(p-k)!) mod(p) for 1 ≤ k ≤ 5.",
        "",
        "",
        "For example, if p=7,",
        "(7-1)! + (7-2)! + (7-3)! + (7-4)! + (7-5)! = 6! + 5! + 4! + 3! + 2! = 720+120+24+6+2 = 872. ",
        "As 872 mod(7) = 4, S(7) = 4.",
        "",
        "",
        "It can be verified that ∑S(p) = 480 for 5 ≤ p < 100.",
        "",
        "",
        "Find ∑S(p) for 5 ≤ p < 108."
      ]
    },
    {
      "id": "5900f4eb1000cf542c50fffd",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 382: Generating polygons",
      "tests": [
        "assert.strictEqual(euler382(), 697003956, 'message: <code>euler382()</code> should return 697003956.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler382() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler382();"
      ],
      "description": [
        "A polygon is a flat shape consisting of straight line segments that are joined to form a closed chain or circuit. A polygon consists of at least three sides and does not self-intersect.",
        "",
        "",
        "",
        "A set S of positive numbers is said to generate a polygon P if: no two sides of P are the same length,",
        " the length of every side of P is in S, and",
        " S contains no other value.",
        "",
        "For example:",
        "The set {3, 4, 5} generates a polygon with sides 3, 4, and 5 (a triangle).",
        "The set {6, 9, 11, 24} generates a polygon with sides 6, 9, 11, and 24 (a quadrilateral).",
        "The sets {1, 2, 3} and {2, 3, 4, 9} do not generate any polygon at all.",
        "",
        "",
        "Consider the sequence s, defined as follows:s1 = 1, s2 = 2, s3 = 3",
        "sn = sn-1 + sn-3 for n > 3.",
        "",
        "Let Un be the set {s1, s2, ..., sn}. For example, U10 = {1, 2, 3, 4, 6, 9, 13, 19, 28, 41}.",
        "Let f(n) be the number of subsets of Un which generate at least one polygon.",
        "For example, f(5) = 7, f(10) = 501 and f(25) = 18635853.",
        "",
        "",
        "",
        "Find the last 9 digits of f(1018)."
      ]
    },
    {
      "id": "5900f4ed1000cf542c50ffff",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 383: Divisibility comparison between factorials",
      "tests": [
        "assert.strictEqual(euler383(), 22173624649806, 'message: <code>euler383()</code> should return 22173624649806.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler383() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler383();"
      ],
      "description": [
        "Let f5(n) be the largest integer x for which 5x divides n.",
        "For example, f5(625000) = 7.",
        "",
        "",
        "",
        "Let T5(n) be the number of integers i which satisfy f5((2·i-1)!) < 2·f5(i!) and 1 ≤ i ≤ n.",
        "It can be verified that T5(103) = 68 and T5(109) = 2408210.",
        "",
        "",
        "",
        "Find T5(1018)."
      ]
    },
    {
      "id": "5900f4ed1000cf542c50fffe",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 384: Rudin-Shapiro sequence",
      "tests": [
        "assert.strictEqual(euler384(), 3354706415856333000, 'message: <code>euler384()</code> should return 3354706415856333000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler384() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler384();"
      ],
      "description": [
        "Define the sequence a(n) as the number of adjacent pairs of ones in the binary expansion of n (possibly overlapping).",
        "E.g.: a(5) = a(1012) = 0, a(6) = a(1102) = 1, a(7) = a(1112) = 2",
        "",
        "Define the sequence b(n) = (-1)a(n).",
        "This sequence is called the Rudin-Shapiro sequence.",
        "Also consider the summatory sequence of b(n): .",
        "",
        "The first couple of values of these sequences are:",
        "n        0     1     2     3     4     5     6     7",
        "a(n)     0     0     0     1     0     0     1     2",
        "b(n)     1     1     1    -1     1     1    -1     1",
        "s(n)     1     2     3     2     3     4     3     4",
        "",
        "The sequence s(n) has the remarkable property that all elements are positive and every positive integer k occurs exactly k times.",
        "",
        "Define g(t,c), with 1 ≤ c ≤ t, as the index in s(n) for which t occurs for the c'th time in s(n).",
        "E.g.: g(3,3) = 6, g(4,2) = 7 and g(54321,12345) = 1220847710.",
        "",
        "Let F(n) be the fibonacci sequence defined by:",
        "F(0)=F(1)=1 and",
        "F(n)=F(n-1)+F(n-2) for n>1.",
        "",
        "Define GF(t)=g(F(t),F(t-1)).",
        "",
        "Find ΣGF(t) for 2≤t≤45."
      ]
    },
    {
      "id": "5900f4ee1000cf542c510000",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 385: Ellipses inside triangles",
      "tests": [
        "assert.strictEqual(euler385(), 3776957309612154000, 'message: <code>euler385()</code> should return 3776957309612154000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler385() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler385();"
      ],
      "description": [
        "For any triangle T in the plane, it can be shown that there is a unique ellipse with largest area that is completely inside T.",
        "",
        "",
        "",
        "For a given n, consider triangles T such that:",
        "- the vertices of T have integer coordinates with absolute value ≤ n, and ",
        "- the foci1 of the largest-area ellipse inside T are (√13,0) and (-√13,0).",
        "Let A(n) be the sum of the areas of all such triangles.",
        "",
        "",
        "For example, if n = 8, there are two such triangles. Their vertices are (-4,-3),(-4,3),(8,0) and (4,3),(4,-3),(-8,0), and the area of each triangle is 36. Thus A(8) = 36 + 36 = 72.",
        "",
        "",
        "It can be verified that A(10) = 252, A(100) = 34632 and A(1000) = 3529008.",
        "",
        "",
        "Find A(1 000 000 000).",
        "",
        "",
        "",
        "1The foci (plural of focus) of an ellipse are two points A and B such that for every point P on the boundary of the ellipse, AP + PB is constant."
      ]
    },
    {
      "id": "5900f4ef1000cf542c510001",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 386: Maximum length of an antichain",
      "tests": [
        "assert.strictEqual(euler386(), 528755790, 'message: <code>euler386()</code> should return 528755790.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler386() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler386();"
      ],
      "description": [
        "Let n be an integer and S(n) be the set of factors of n.",
        "",
        "A subset A of S(n) is called an antichain of S(n) if A contains only one element or if none of the elements of A divides any of the other elements of A.",
        "",
        "For example: S(30) = {1, 2, 3, 5, 6, 10, 15, 30}",
        "{2, 5, 6} is not an antichain of S(30).",
        "{2, 3, 5} is an antichain of S(30).",
        "",
        "Let N(n) be the maximum length of an antichain of S(n).",
        "",
        "Find ΣN(n) for 1 ≤ n ≤ 108"
      ]
    },
    {
      "id": "5900f4f11000cf542c510003",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 387: Harshad Numbers",
      "tests": [
        "assert.strictEqual(euler387(), 696067597313468, 'message: <code>euler387()</code> should return 696067597313468.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler387() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler387();"
      ],
      "description": [
        "A Harshad or Niven number is a number that is divisible by the sum of its digits.",
        "201 is a Harshad number because it is divisible by 3 (the sum of its digits.)",
        "When we truncate the last digit from 201, we get 20, which is a Harshad number.",
        "When we truncate the last digit from 20, we get 2, which is also a Harshad number.",
        "Let's call a Harshad number that, while recursively truncating the last digit, always results in a Harshad number a right truncatable Harshad number.  ",
        "",
        "Also:",
        "201/3=67 which is prime.",
        "Let's call a Harshad number that, when divided by the sum of its digits, results in a prime a strong Harshad number.",
        "",
        "Now take the number 2011 which is prime.",
        "When we truncate the last digit from it we get 201, a strong Harshad number that is also right truncatable.",
        "Let's call such primes strong, right truncatable Harshad primes.",
        "",
        "You are given that the sum of the strong, right truncatable Harshad primes less than 10000 is 90619.",
        "",
        "Find the sum of the strong, right truncatable Harshad primes less than 1014."
      ]
    },
    {
      "id": "5900f4f11000cf542c510002",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 388: Distinct Lines",
      "tests": [
        "assert.strictEqual(euler388(), 831907372805130000, 'message: <code>euler388()</code> should return 831907372805130000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler388() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler388();"
      ],
      "description": [
        "Consider all lattice points (a,b,c) with 0 ≤ a,b,c ≤ N.",
        "",
        "",
        "From the origin O(0,0,0) all lines are drawn to the other lattice points.",
        "Let D(N) be the number of distinct such lines.",
        "",
        "",
        "You are given that D(1 000 000) = 831909254469114121.",
        "",
        "Find D(1010). Give as your answer the first nine digits followed by the last nine digits."
      ]
    },
    {
      "id": "5900f4f21000cf542c510004",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 389: Platonic Dice",
      "tests": [
        "assert.strictEqual(euler389(), 2406376.3623, 'message: <code>euler389()</code> should return 2406376.3623.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler389() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler389();"
      ],
      "description": [
        "An unbiased single 4-sided die is thrown and its value, T, is noted.T unbiased 6-sided dice are thrown and their scores are added together. The sum, C, is noted.C unbiased 8-sided dice are thrown and their scores are added together. The sum, O, is noted.O unbiased 12-sided dice are thrown and their scores are added together. The sum, D, is noted.D unbiased 20-sided dice are thrown and their scores are added together. The sum, I, is noted.",
        "Find the variance of I, and give your answer rounded to 4 decimal places."
      ]
    },
    {
      "id": "5900f4f21000cf542c510005",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 390: Triangles with non rational sides and integral area",
      "tests": [
        "assert.strictEqual(euler390(), 2919133642971, 'message: <code>euler390()</code> should return 2919133642971.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler390() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler390();"
      ],
      "description": [
        "Consider the triangle with sides √5, √65 and √68.",
        "It can be shown that this triangle has area 9.",
        "",
        "S(n) is the sum of the areas of  all triangles with sides √(1+b2), √(1+c2) and √(b2+c2) (for positive integers b and c ) that have an integral area not exceeding n.",
        "",
        "The example triangle has b=2 and c=8.",
        "",
        "S(106)=18018206.",
        "",
        "Find S(1010)."
      ]
    },
    {
      "id": "5900f4f31000cf542c510006",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 391: Hopping Game",
      "tests": [
        "assert.strictEqual(euler391(), 61029882288, 'message: <code>euler391()</code> should return 61029882288.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler391() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler391();"
      ],
      "description": [
        "Let sk be the number of 1’s when writing the numbers from 0 to k in binary.",
        "For example, writing 0 to 5 in binary, we have 0, 1, 10, 11, 100, 101. There are seven 1’s, so s5 = 7.",
        "The sequence S = {sk : k ≥ 0} starts {0, 1, 2, 4, 5, 7, 9, 12, ...}.",
        "",
        "",
        "A game is played by two players. Before the game starts, a number n is chosen. A counter c starts at 0. At each turn, the player chooses a number from 1 to n (inclusive) and increases c by that number. The resulting value of c must be a member of S. If there are no more valid moves, the player loses.",
        "",
        "",
        "",
        "For example:",
        "Let n = 5. c starts at 0.",
        "Player 1 chooses 4, so c becomes 0 + 4 = 4.",
        "Player 2 chooses 5, so c becomes 4 + 5 = 9.",
        "Player 1 chooses 3, so c becomes 9 + 3 = 12.",
        "etc.",
        "Note that c must always belong to S, and each player can increase c by at most n.",
        "",
        "",
        "",
        "Let M(n) be the highest number the first player can choose at her first turn to force a win, and M(n) = 0 if there is no such move. For example, M(2) = 2, M(7) = 1 and M(20) = 4.",
        "",
        "",
        "",
        "Given Σ(M(n))3 = 8150 for 1 ≤ n ≤ 20.",
        "",
        "",
        "",
        "Find Σ(M(n))3 for 1 ≤ n ≤ 1000."
      ]
    },
    {
      "id": "5900f4f41000cf542c510007",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 392: Enmeshed unit circle",
      "tests": [
        "assert.strictEqual(euler392(), 3.1486734435, 'message: <code>euler392()</code> should return 3.1486734435.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler392() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler392();"
      ],
      "description": [
        "A rectilinear grid is an orthogonal grid where the spacing between the gridlines does not have to be equidistant.",
        "An example of such grid is logarithmic graph paper.",
        "",
        "",
        "Consider rectilinear grids in the Cartesian coordinate system with the following properties:The gridlines are parallel to the axes of the Cartesian coordinate system.There are N+2 vertical and N+2 horizontal gridlines. Hence there are (N+1) x (N+1) rectangular cells.The equations of the two outer vertical gridlines are x = -1 and x = 1.The equations of the two outer horizontal gridlines are y = -1 and y = 1.The grid cells are colored red if they overlap with the unit circle, black otherwise.For this problem we would like you to find the positions of the remaining N inner horizontal and N inner vertical gridlines so that the area occupied by the red cells is minimized.",
        "",
        "",
        "E.g. here is a picture of the solution for N = 10:",
        "",
        "",
        "",
        "",
        "The area occupied by the red cells for N = 10 rounded to 10 digits behind the decimal point is 3.3469640797.",
        "",
        "",
        "Find the positions for N = 400. ",
        "Give as your answer the area occupied by the red cells rounded to 10 digits behind the decimal point."
      ]
    },
    {
      "id": "5900f4f61000cf542c510008",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 393: Migrating ants",
      "tests": [
        "assert.strictEqual(euler393(), 112398351350823100, 'message: <code>euler393()</code> should return 112398351350823100.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler393() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler393();"
      ],
      "description": [
        "An  n×n grid of squares contains  n2 ants, one ant per square.",
        "All ants decide to move simultaneously to an adjacent square (usually 4 possibilities, except for ants on the edge of the grid or at the corners).",
        "We define f(n) to be the number of ways this can happen without any ants ending on the same square and without any two ants crossing the same edge between two squares.",
        "",
        "",
        "You are given that f(4) = 88.",
        "Find  f(10)."
      ]
    },
    {
      "id": "5900f4f71000cf542c510009",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 394: Eating pie",
      "tests": [
        "assert.strictEqual(euler394(), 3.2370342194, 'message: <code>euler394()</code> should return 3.2370342194.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler394() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler394();"
      ],
      "description": [
        "Jeff eats a pie in an unusual way.",
        "The pie is circular. He starts with slicing an initial cut in the pie along a radius.",
        "While there is at least a given fraction F of pie left, he performs the following procedure:",
        "- He makes two slices from the pie centre to any point of what is remaining of the pie border, any point on the remaining pie border equally likely. This will divide the remaining pie into three pieces. ",
        "- Going counterclockwise from the initial cut, he takes the first two pie pieces and eats them.",
        "When less than a fraction F of pie remains, he does not repeat this procedure. Instead, he eats all of the remaining pie.",
        "",
        "",
        "",
        "",
        "",
        "",
        "For x ≥ 1, let E(x) be the expected number of times Jeff repeats the procedure above with F = 1/x.",
        "It can be verified that  E(1) = 1, E(2) ≈ 1.2676536759, and E(7.5) ≈ 2.1215732071.",
        "",
        "",
        "Find E(40) rounded to 10 decimal places behind the decimal point."
      ]
    },
    {
      "id": "5900f4f71000cf542c51000a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 395: Pythagorean tree",
      "tests": [
        "assert.strictEqual(euler395(), 28.2453753155, 'message: <code>euler395()</code> should return 28.2453753155.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler395() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler395();"
      ],
      "description": [
        "The Pythagorean tree is a fractal generated by the following procedure:",
        "",
        "",
        "",
        "Start with a unit square. Then, calling one of the sides its base (in the animation, the bottom side is the base):",
        " Attach a right triangle to the side opposite the base, with the hypotenuse coinciding with that side and with the sides in a 3-4-5 ratio. Note that the smaller side of the triangle must be on the 'right' side with respect to the base (see animation).",
        " Attach a square to each leg of the right triangle, with one of its sides coinciding with that leg.",
        " Repeat this procedure for both squares, considering as their bases the sides touching the triangle.",
        "",
        "The resulting figure, after an infinite number of iterations, is the Pythagorean tree.",
        "",
        "",
        "",
        "",
        "",
        "It can be shown that there exists at least one rectangle, whose sides are parallel to the largest square of the Pythagorean tree, which encloses the Pythagorean tree completely.",
        "",
        "",
        "Find the smallest area possible for such a bounding rectangle, and give your answer rounded to 10 decimal places."
      ]
    },
    {
      "id": "5900f4f81000cf542c51000b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 396: Weak Goodstein sequence",
      "tests": [
        "assert.strictEqual(euler396(), 173214653, 'message: <code>euler396()</code> should return 173214653.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler396() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler396();"
      ],
      "description": [
        "For any positive integer n, the nth weak Goodstein sequence {g1, g2, g3, ...} is defined as:",
        " g1 = n",
        " for k > 1, gk is obtained by writing gk-1 in base k, interpreting it as a base k + 1 number, and subtracting 1.",
        "",
        "The sequence terminates when gk becomes 0.",
        "",
        "",
        "For example, the 6th weak Goodstein sequence is {6, 11, 17, 25, ...}:",
        " g1 = 6.",
        " g2 = 11 since 6 = 1102, 1103 = 12, and 12 - 1 = 11.",
        " g3 = 17 since 11 = 1023, 1024 = 18, and 18 - 1 = 17.",
        " g4 = 25 since 17 = 1014, 1015 = 26, and 26 - 1 = 25.",
        "",
        "and so on.",
        "",
        "",
        "It can be shown that every weak Goodstein sequence terminates.",
        "",
        "",
        "Let G(n) be the number of nonzero elements in the nth weak Goodstein sequence.",
        "It can be verified that G(2) = 3, G(4) = 21 and G(6) = 381.",
        "It can also be verified that ΣG(n) = 2517 for 1 ≤ n < 8.",
        "",
        "",
        "Find the last 9 digits of ΣG(n) for 1 ≤ n < 16."
      ]
    },
    {
      "id": "5900f4f91000cf542c51000c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 397: Triangle on parabola",
      "tests": [
        "assert.strictEqual(euler397(), 141630459461893730, 'message: <code>euler397()</code> should return 141630459461893730.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler397() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler397();"
      ],
      "description": [
        "On the parabola y = x2/k, three points A(a, a2/k), B(b, b2/k) and C(c, c2/k) are chosen.",
        "",
        "",
        "Let F(K, X) be the number of the integer quadruplets (k, a, b, c) such that at least one angle of the triangle ABC is 45-degree, with 1 ≤ k ≤ K and -X ≤ a < b < c ≤ X.",
        "",
        "",
        "For example, F(1, 10) = 41 and F(10, 100) = 12492.",
        "Find F(106, 109)."
      ]
    },
    {
      "id": "5900f4fa1000cf542c51000d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 398: Cutting rope",
      "tests": [
        "assert.strictEqual(euler398(), 2010.59096, 'message: <code>euler398()</code> should return 2010.59096.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler398() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler398();"
      ],
      "description": [
        "Inside a rope of length n, n-1 points are placed with distance 1 from each other and from the endpoints. Among these points, we choose m-1 points at random and cut the rope at these points to create m segments.",
        "",
        "",
        "Let E(n, m) be the expected length of the second-shortest segment.",
        "For example, E(3, 2) = 2 and E(8, 3) = 16/7.",
        "Note that if multiple segments have the same shortest length the length of the second-shortest segment is defined as the same as the shortest length.",
        "",
        "",
        "Find E(107, 100).",
        "Give your answer rounded to 5 decimal places behind the decimal point."
      ]
    },
    {
      "id": "5900f4fc1000cf542c51000e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 399: Squarefree Fibonacci Numbers",
      "tests": [
        "assert.strictEqual(euler399(), 1508395636674243, 6.5e27330467, 'message: <code>euler399()</code> should return 1508395636674243, 6.5e27330467.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler399() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler399();"
      ],
      "description": [
        "The first 15 fibonacci numbers are:",
        "1,1,2,3,5,8,13,21,34,55,89,144,233,377,610.",
        "It can be seen that 8 and 144 are not squarefree: 8 is divisible by 4 and 144 is divisible by 4 and by 9. ",
        "So the first 13 squarefree fibonacci numbers are:",
        "1,1,2,3,5,13,21,34,55,89,233,377 and 610.",
        "",
        "",
        "The 200th squarefree fibonacci number is:",
        "971183874599339129547649988289594072811608739584170445.",
        "The last sixteen digits of this number are: 1608739584170445 and in scientific notation this number can be written as 9.7e53.",
        "",
        "",
        "Find the 100 000 000th squarefree fibonacci number.",
        "Give as your answer its last sixteen digits followed by a comma followed by the number in scientific notation (rounded to one digit after the decimal point).",
        "For the 200th squarefree number the answer would have been: 1608739584170445,9.7e53",
        "",
        "",
        "",
        "Note: ",
        "For this problem, assume that for every prime p, the first fibonacci number divisible by p is not divisible by p2 (this is part of Wall's conjecture). This has been verified for primes ≤ 3·1015, but has not been proven in general.",
        "",
        "If it happens that the conjecture is false, then the accepted answer to this problem isn't guaranteed to be the 100 000 000th squarefree fibonacci number, rather it represents only a lower bound for that number."
      ]
    },
    {
      "id": "5900f4fe1000cf542c510010",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 400: Fibonacci tree game",
      "tests": [
        "assert.strictEqual(euler400(), 438505383468410600, 'message: <code>euler400()</code> should return 438505383468410600.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler400() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler400();"
      ],
      "description": [
        "A Fibonacci tree is a binary tree recursively defined as:T(0) is the empty tree.",
        "T(1) is the binary tree with only one node.",
        "T(k) consists of a root node that has T(k-1) and T(k-2) as children.",
        "",
        "On such a tree two players play a take-away game. On each turn a player selects a node and removes that node along with the subtree rooted at that node.",
        "The player who is forced to take the root node of the entire tree loses.",
        "",
        "",
        "Here are the winning moves of the first player on the first turn for T(k) from k=1 to k=6.",
        "",
        "",
        "",
        "",
        "Let f(k) be the number of winning moves of the first player (i.e. the moves for which the second player has no winning strategy) on the first turn of the game when this game is played on T(k).",
        "",
        "",
        "",
        "For example, f(5) = 1 and f(10) = 17.",
        "",
        "",
        "",
        "Find f(10000). Give the last 18 digits of your answer."
      ]
    },
    {
      "id": "5900f4fd1000cf542c51000f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 401: Sum of squares of divisors",
      "tests": [
        "assert.strictEqual(euler401(), 281632621, 'message: <code>euler401()</code> should return 281632621.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler401() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler401();"
      ],
      "description": [
        "The divisors of 6 are 1,2,3 and 6.",
        "The sum of the squares of these numbers is 1+4+9+36=50.",
        "",
        "",
        "Let sigma2(n) represent the sum of the squares of the divisors of n.",
        "Thus sigma2(6)=50.",
        "",
        "Let SIGMA2 represent the summatory function of sigma2, that is SIGMA2(n)=∑sigma2(i) for i=1 to n.",
        "The first 6 values of SIGMA2 are: 1,6,16,37,63 and 113.",
        "",
        "",
        "Find SIGMA2(1015) modulo 109."
      ]
    },
    {
      "id": "5900f4ff1000cf542c510011",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 402: Integer-valued polynomials",
      "tests": [
        "assert.strictEqual(euler402(), 356019862, 'message: <code>euler402()</code> should return 356019862.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler402() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler402();"
      ],
      "description": [
        "It can be shown that the polynomial n4 + 4n3 + 2n2 + 5n is a multiple of 6 for every integer n. It can also be shown that 6 is the largest integer satisfying this property.",
        "",
        "",
        "Define M(a, b, c) as the maximum m such that n4 + an3 + bn2 + cn is a multiple of m for all integers n. For example, M(4, 2, 5) = 6.",
        "",
        "",
        "Also, define S(N) as the sum of M(a, b, c) for all 0 < a, b, c ≤ N.",
        "",
        "",
        "We can verify that S(10) = 1972 and S(10000) = 2024258331114.",
        "",
        "",
        "Let Fk be the Fibonacci sequence:",
        "F0 = 0, F1 = 1 and",
        "Fk = Fk-1 + Fk-2 for k ≥ 2.",
        "",
        "",
        "Find the last 9 digits of Σ S(Fk) for 2 ≤ k ≤ 1234567890123."
      ]
    },
    {
      "id": "5900f5001000cf542c510013",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 403: Lattice points enclosed by parabola and line",
      "tests": [
        "assert.strictEqual(euler403(), 18224771, 'message: <code>euler403()</code> should return 18224771.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler403() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler403();"
      ],
      "description": [
        "For integers a and b, we define D(a, b) as the domain enclosed by the parabola y = x2 and the line y = a·x + b:D(a, b) = { (x, y) | x2 ≤ y ≤ a·x + b }.",
        "",
        "",
        "L(a, b) is defined as the number of lattice points contained in D(a, b).",
        "For example, L(1, 2) = 8 and L(2, -1) = 1.",
        "",
        "",
        "We also define S(N) as the sum of L(a, b) for all the pairs (a, b) such that the area of D(a, b) is a rational number and |a|,|b| ≤ N.",
        "We can verify that S(5) = 344 and S(100) = 26709528.",
        "",
        "",
        "Find S(1012). Give your answer mod 108."
      ]
    },
    {
      "id": "5900f5001000cf542c510012",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 404: Crisscross Ellipses",
      "tests": [
        "assert.strictEqual(euler404(), 1199215615081353, 'message: <code>euler404()</code> should return 1199215615081353.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler404() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler404();"
      ],
      "description": [
        "Ea is an ellipse with an equation of the form x2 + 4y2 = 4a2.",
        "Ea' is the rotated image of Ea by θ degrees counterclockwise around the origin O(0, 0) for 0° < θ < 90°.",
        "",
        "",
        "",
        "",
        "",
        "",
        "b is the distance to the origin of the two intersection points closest to the origin and c is the distance of the two other intersection points.",
        "We call an ordered triplet (a, b, c) a canonical ellipsoidal triplet if a, b and c are positive integers.",
        "For example, (209, 247, 286) is a canonical ellipsoidal triplet.",
        "",
        "",
        "",
        "Let C(N) be the number of distinct canonical ellipsoidal triplets (a, b, c) for a ≤ N.",
        "It can be verified that C(103) = 7, C(104) = 106 and C(106) = 11845.",
        "",
        "",
        "",
        "Find C(1017)."
      ]
    },
    {
      "id": "5900f5021000cf542c510014",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 405: A rectangular tiling",
      "tests": [
        "assert.strictEqual(euler405(), 237696125, 'message: <code>euler405()</code> should return 237696125.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler405() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler405();"
      ],
      "description": [
        "We wish to tile a rectangle whose length is twice its width.",
        "Let T(0) be the tiling consisting of a single rectangle.",
        "For n > 0, let T(n) be obtained from T(n-1) by replacing all tiles in the following manner:",
        "",
        "",
        "",
        "",
        "",
        "",
        "The following animation demonstrates the tilings T(n) for n from 0 to 5:",
        "",
        "",
        "",
        "",
        "",
        "",
        "Let f(n) be the number of points where four tiles meet in T(n).",
        "For example, f(1) = 0, f(4) = 82 and f(109) mod 177 = 126897180.",
        "",
        "",
        "",
        "Find f(10k) for k = 1018, give your answer modulo 177."
      ]
    },
    {
      "id": "5900f5021000cf542c510015",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 406: Guessing Game",
      "tests": [
        "assert.strictEqual(euler406(), 36813.12757207, 'message: <code>euler406()</code> should return 36813.12757207.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler406() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler406();"
      ],
      "description": [
        "We are trying to find a hidden number selected from the set of integers {1, 2, ..., n} by asking questions. ",
        "Each number (question) we ask, we get one of three possible answers: \"Your guess is lower than the hidden number\" (and you incur a cost of a), or",
        " \"Your guess is higher than the hidden number\" (and you incur a cost of b), or",
        " \"Yes, that's it!\" (and the game ends).",
        "Given the value of n, a, and b, an optimal strategy minimizes the total cost for the worst possible case.",
        "",
        "For example, if n = 5, a = 2, and b = 3, then we may begin by asking \"2\" as our first question.",
        "",
        "If we are told that 2 is higher than the hidden number (for a cost of b=3), then we are sure that \"1\" is the hidden number (for a total cost of 3).",
        "If we are told that 2 is lower than the hidden number (for a cost of a=2), then our next question will be \"4\".",
        "If we are told that 4 is higher than the hidden number (for a cost of b=3), then we are sure that \"3\" is the hidden number (for a total cost of 2+3=5).",
        "If we are told that 4 is lower than the hidden number (for a cost of a=2), then we are sure that \"5\" is the hidden number (for a total cost of 2+2=4).",
        "Thus, the worst-case cost achieved by this strategy is 5. It can also be shown that this is the lowest worst-case cost that can be achieved. ",
        "So, in fact, we have just described an optimal strategy for the given values of n, a, and b.",
        "",
        "Let C(n, a, b) be the worst-case cost achieved by an optimal strategy for the given values of n, a, and b.",
        "",
        "Here are a few examples:",
        "C(5, 2, 3) = 5",
        "C(500, √2, √3) = 13.22073197...",
        "C(20000, 5, 7) = 82",
        "C(2000000, √5, √7) = 49.63755955...",
        "",
        "Let Fk be the Fibonacci numbers: Fk = Fk-1 + Fk-2 with base cases F1 = F2 = 1.Find ∑1≤k≤30 C(1012, √k, √Fk), and give your answer rounded to 8 decimal places behind the decimal point."
      ]
    },
    {
      "id": "5900f5041000cf542c510016",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 407: Idempotents",
      "tests": [
        "assert.strictEqual(euler407(), 39782849136421, 'message: <code>euler407()</code> should return 39782849136421.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler407() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler407();"
      ],
      "description": [
        "If we calculate a2 mod 6 for 0 ≤ a ≤ 5 we get: 0,1,4,3,4,1.",
        "",
        "",
        "The largest value of a such that a2 ≡ a mod 6 is 4.",
        "Let's call M(n) the largest value of a < n such that a2 ≡ a (mod n).",
        "So M(6) = 4.",
        "",
        "",
        "Find ∑M(n) for 1 ≤ n ≤ 107."
      ]
    },
    {
      "id": "5900f5091000cf542c51001b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 408: Admissible paths through a grid",
      "tests": [
        "assert.strictEqual(euler408(), 299742733, 'message: <code>euler408()</code> should return 299742733.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler408() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler408();"
      ],
      "description": [
        "Let's call a lattice point (x, y) inadmissible if x, y and x + y are all positive perfect squares.",
        "For example, (9, 16) is inadmissible, while (0, 4), (3, 1) and (9, 4) are not.",
        "",
        "Consider a path from point (x1, y1) to point (x2, y2) using only unit steps north or east.",
        "Let's call such a path admissible if none of its intermediate points are inadmissible.",
        "",
        "Let P(n) be the number of admissible paths from (0, 0) to (n, n).",
        "It can be verified that P(5) = 252, P(16) = 596994440 and P(1000) mod 1 000 000 007 = 341920854.",
        "",
        "Find P(10 000 000) mod 1 000 000 007."
      ]
    },
    {
      "id": "5900f5061000cf542c510017",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 409: Nim Extreme",
      "tests": [
        "assert.strictEqual(euler409(), 253223948, 'message: <code>euler409()</code> should return 253223948.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler409() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler409();"
      ],
      "description": [
        "Let n be a positive integer. Consider nim positions where:There are n non-empty piles.",
        "Each pile has size less than 2n.",
        "No two piles have the same size.",
        "Let W(n) be the number of winning nim positions satisfying the above",
        "conditions (a position is winning if the first player has a winning strategy). For example, W(1) = 1, W(2) = 6, W(3) = 168, W(5) = 19764360 and W(100) mod 1 000 000 007 = 384777056.",
        "",
        "Find W(10 000 000) mod 1 000 000 007."
      ]
    },
    {
      "id": "5900f5071000cf542c510018",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 410: Circle and tangent line",
      "tests": [
        "assert.strictEqual(euler410(), 799999783589946600, 'message: <code>euler410()</code> should return 799999783589946600.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler410() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler410();"
      ],
      "description": [
        "Let C be the circle with radius r, x2 + y2 = r2. We choose two points P(a, b) and Q(-a, c) so that the line passing through P and Q is tangent to C.",
        "",
        "For example, the quadruplet (r, a, b, c) = (2, 6, 2, -7) satisfies this property.",
        "",
        "Let F(R, X) be the number of the integer quadruplets (r, a, b, c) with this property, and with 0 < r ≤ R and 0 < a ≤ X.",
        "",
        "We can verify that F(1, 5) = 10, F(2, 10) = 52 and F(10, 100) = 3384.",
        "Find F(108, 109) + F(109, 108)."
      ]
    },
    {
      "id": "5900f5081000cf542c510019",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 411: Uphill paths",
      "tests": [
        "assert.strictEqual(euler411(), 9936352, 'message: <code>euler411()</code> should return 9936352.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler411() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler411();"
      ],
      "description": [
        "Let n be a positive integer. Suppose there are stations at the coordinates (x, y) = (2i mod n, 3i mod n) for 0 ≤ i ≤ 2n. We will consider stations with the same coordinates as the same station.",
        "",
        "We wish to form a path from (0, 0) to (n, n) such that the x and y coordinates never decrease.",
        "Let S(n) be the maximum number of stations such a path can pass through.",
        "",
        "For example, if n = 22, there are 11 distinct stations, and a valid path can pass through at most 5 stations. Therefore, S(22) = 5.",
        "The case is illustrated below, with an example of an optimal path:",
        "",
        "",
        "",
        "It can also be verified that S(123) = 14 and S(10000) = 48.",
        "",
        "Find ∑ S(k5) for 1 ≤ k ≤ 30."
      ]
    },
    {
      "id": "5900f5081000cf542c51001a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 412: Gnomon numbering",
      "tests": [
        "assert.strictEqual(euler412(), 38788800, 'message: <code>euler412()</code> should return 38788800.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler412() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler412();"
      ],
      "description": [
        "For integers m, n (0 ≤ n < m), let L(m, n) be an m×m grid with the top-right n×n grid removed.",
        "",
        "For example, L(5, 3) looks like this:",
        "",
        "",
        "",
        "We want to number each cell of L(m, n) with consecutive integers 1, 2, 3, ... such that the number in every cell is smaller than the number below it and to the left of it.",
        "",
        "For example, here are two valid numberings of L(5, 3):",
        "",
        "",
        "Let LC(m, n) be the number of valid numberings of L(m, n).",
        "It can be verified that LC(3, 0) = 42, LC(5, 3) = 250250, LC(6, 3) = 406029023400 and LC(10, 5) mod 76543217 = 61251715.",
        "",
        "Find LC(10000, 5000) mod 76543217."
      ]
    },
    {
      "id": "5900f50a1000cf542c51001c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 413: One-child Numbers",
      "tests": [
        "assert.strictEqual(euler413(), 3079418648040719, 'message: <code>euler413()</code> should return 3079418648040719.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler413() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler413();"
      ],
      "description": [
        "We say that a d-digit positive number (no leading zeros) is a one-child number if exactly one of its sub-strings is divisible by d.",
        "",
        "For example, 5671 is a 4-digit one-child number. Among all its sub-strings 5, 6, 7, 1, 56, 67, 71, 567, 671 and 5671, only 56 is divisible by 4.",
        "Similarly, 104 is a 3-digit one-child number because only 0 is divisible by 3.",
        "1132451 is a 7-digit one-child number because only 245 is divisible by 7.",
        "",
        "Let F(N) be the number of the one-child numbers less than N.",
        "We can verify that F(10) = 9, F(103) = 389 and F(107) = 277674.",
        "",
        "Find F(1019)."
      ]
    },
    {
      "id": "5900f50b1000cf542c51001d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 414: Kaprekar constant",
      "tests": [
        "assert.strictEqual(euler414(), 552506775824935500, 'message: <code>euler414()</code> should return 552506775824935500.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler414() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler414();"
      ],
      "description": [
        "6174 is a remarkable number; if we sort its digits in increasing order and subtract that number from the number you get when you sort the digits in decreasing order, we get 7641-1467=6174.",
        "Even more remarkable is that if we start from any 4 digit number and repeat this process of sorting and subtracting, we'll eventually end up with 6174 or immediately with 0 if all digits are equal. ",
        "This also works with numbers that have less than 4 digits if we pad the number with leading zeroes until we have 4 digits.",
        "E.g. let's start with the number 0837:",
        "8730-0378=8352",
        "8532-2358=6174",
        "",
        "",
        "6174 is called the Kaprekar constant. The process of sorting and subtracting and repeating this until either 0 or the Kaprekar constant is reached is called the Kaprekar routine.",
        "",
        "",
        "We can consider the Kaprekar routine for other bases and number of digits. ",
        "Unfortunately, it is not guaranteed a Kaprekar constant exists in all cases; either the routine can end up in a cycle for some input numbers or the constant the routine arrives at can be different for different input numbers.",
        "However, it can be shown that for 5 digits and a base b = 6t+3≠9, a Kaprekar constant exists.",
        "E.g. base 15: (10,4,14,9,5)15",
        "base 21: (14,6,20,13,7)21",
        "",
        "Define Cb to be the Kaprekar constant in base b for 5 digits.",
        "Define the function sb(i) to be",
        " 0 if i = Cb or if i written in base b consists of 5 identical digits",
        " the number of iterations it takes the Kaprekar routine in base b to arrive at Cb, otherwise",
        "",
        "Note that we can define sb(i) for all integers i < b5. If i written in base b takes less than 5 digits, the number is padded with leading zero digits until we have 5 digits before applying the Kaprekar routine.",
        "",
        "",
        "Define S(b) as the sum of sb(i) for 0 < i < b5.",
        "E.g. S(15) = 5274369 ",
        "S(111) = 400668930299",
        "",
        "",
        "Find the sum of S(6k+3) for 2 ≤ k ≤ 300.",
        "Give the last 18 digits as your answer."
      ]
    },
    {
      "id": "5900f50c1000cf542c51001e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 415: Titanic sets",
      "tests": [
        "assert.strictEqual(euler415(), 55859742, 'message: <code>euler415()</code> should return 55859742.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler415() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler415();"
      ],
      "description": [
        "A set of lattice points S is called a titanic set if there exists a line passing through exactly two points in S.",
        "",
        "An example of a titanic set is S = {(0, 0), (0, 1), (0, 2), (1, 1), (2, 0), (1, 0)}, where the line passing through (0, 1) and (2, 0) does not pass through any other point in S.",
        "",
        "On the other hand, the set {(0, 0), (1, 1), (2, 2), (4, 4)} is not a titanic set since the line passing through any two points in the set also passes through the other two.",
        "",
        "For any positive integer N, let T(N) be the number of titanic sets S whose every point (x, y) satisfies 0 ≤ x, y ≤ N.",
        "It can be verified that T(1) = 11, T(2) = 494, T(4) = 33554178, T(111) mod 108 = 13500401 and T(105) mod 108 = 63259062.",
        "",
        "Find T(1011) mod 108."
      ]
    },
    {
      "id": "5900f50e1000cf542c510020",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 416: A frog's trip",
      "tests": [
        "assert.strictEqual(euler416(), 898082747, 'message: <code>euler416()</code> should return 898082747.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler416() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler416();"
      ],
      "description": [
        "A row of n squares contains a frog in the leftmost square. By successive jumps the frog goes to the rightmost square and then back to the leftmost square. On the outward trip he jumps one, two or three squares to the right, and on the homeward trip he jumps to the left in a similar manner. He cannot jump outside the squares. He repeats the round-trip travel m times.",
        "",
        "Let F(m, n) be the number of the ways the frog can travel so that at most one square remains unvisited.",
        "For example, F(1, 3) = 4, F(1, 4) = 15, F(1, 5) = 46, F(2, 3) = 16 and F(2, 100) mod 109 = 429619151.",
        "",
        "Find the last 9 digits of F(10, 1012)."
      ]
    },
    {
      "id": "5900f50d1000cf542c51001f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 417: Reciprocal cycles II",
      "tests": [
        "assert.strictEqual(euler417(), 446572970925740, 'message: <code>euler417()</code> should return 446572970925740.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler417() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler417();"
      ],
      "description": [
        "A unit fraction contains 1 in the numerator. The decimal representation of the unit fractions with denominators 2 to 10 are given:",
        "",
        "1/2= 0.5",
        "1/3= 0.(3)",
        "1/4= 0.25",
        "1/5= 0.2",
        "1/6= 0.1(6)",
        "1/7= 0.(142857)",
        "1/8= 0.125",
        "1/9= 0.(1)",
        "1/10= 0.1",
        "",
        "Where 0.1(6) means 0.166666..., and has a 1-digit recurring cycle. It can be seen that 1/7 has a 6-digit recurring cycle.",
        "",
        "Unit fractions whose denominator has no other prime factors than 2 and/or 5 are not considered to have a recurring cycle.",
        "We define the length of the recurring cycle of those unit fractions as 0. ",
        "",
        "",
        "Let L(n) denote the length of the recurring cycle of 1/n.",
        "You are given that ∑L(n) for 3 ≤ n ≤ 1 000 000 equals 55535191115.",
        "",
        "",
        "Find ∑L(n) for 3 ≤ n ≤ 100 000 000"
      ]
    },
    {
      "id": "5900f50f1000cf542c510021",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 418: Factorisation triples",
      "tests": [
        "assert.strictEqual(euler418(), 1177163565297340400, 'message: <code>euler418()</code> should return 1177163565297340400.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler418() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler418();"
      ],
      "description": [
        "Let n be a positive integer. An integer triple (a, b, c) is called a factorisation triple of n if: 1 ≤ a ≤ b ≤ c",
        " a·b·c = n.",
        "",
        "Define f(n) to be a + b + c for the factorisation triple (a, b, c) of n which minimises c / a. One can show that this triple is unique.",
        "",
        "",
        "For example, f(165) = 19, f(100100) = 142 and f(20!) = 4034872.",
        "",
        "",
        "Find f(43!)."
      ]
    },
    {
      "id": "5900f5101000cf542c510022",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 419: Look and say sequence",
      "tests": [
        "assert.strictEqual(euler419(), 998567458, 1046245404, 43363922, 'message: <code>euler419()</code> should return 998567458, 1046245404, 43363922.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler419() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler419();"
      ],
      "description": [
        "The look and say sequence goes 1, 11, 21, 1211, 111221, 312211, 13112221, 1113213211, ...",
        "The sequence starts with 1 and all other members are obtained by describing the previous member in terms of consecutive digits.",
        "It helps to do this out loud:",
        "1 is 'one one' → 11",
        "11 is 'two ones' → 21",
        "21 is 'one two and one one' → 1211 ",
        "1211 is 'one one, one two and two ones' → 111221",
        "111221 is 'three ones, two twos and one one' → 312211",
        "...",
        "",
        "",
        "Define A(n), B(n) and C(n) as the number of ones, twos and threes in the n'th element of the sequence respectively.",
        "One can verify that A(40) = 31254, B(40) = 20259 and C(40) = 11625.",
        "",
        "",
        "Find A(n), B(n) and C(n) for n = 1012. ",
        "Give your answer modulo 230 and separate your values for A, B and C by a comma. ",
        "E.g. for n = 40 the answer would be 31254,20259,11625"
      ]
    },
    {
      "id": "5900f5111000cf542c510023",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 420: 2x2 positive integer matrix",
      "tests": [
        "assert.strictEqual(euler420(), 145159332, 'message: <code>euler420()</code> should return 145159332.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler420() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler420();"
      ],
      "description": [
        "A positive integer matrix is a matrix whose elements are all positive integers.",
        "Some positive integer matrices can be expressed as a square of a positive integer matrix in two different ways. Here is an example:",
        "",
        "",
        "",
        "",
        "",
        "We define F(N) as the number of the 2x2 positive integer matrices which have a trace less than N and which can be expressed as a square of a positive integer matrix in two different ways.",
        "We can verify that F(50) = 7 and F(1000) = 1019.",
        "",
        "",
        "",
        "Find F(107)."
      ]
    },
    {
      "id": "5900f5131000cf542c510024",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 421: Prime factors of n15+1",
      "tests": [
        "assert.strictEqual(euler421(), 2304215802083466200, 'message: <code>euler421()</code> should return 2304215802083466200.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler421() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler421();"
      ],
      "description": [
        "Numbers of the form n15+1 are composite for every integer n > 1.",
        "For positive integers n and m let s(n,m) be defined as the sum of the distinct prime factors of n15+1 not exceeding m.",
        "",
        "E.g. 215+1 = 3×3×11×331.",
        "So s(2,10) = 3 and s(2,1000) = 3+11+331 = 345.",
        "",
        "Also 1015+1 = 7×11×13×211×241×2161×9091.",
        "So s(10,100) = 31 and s(10,1000) = 483.",
        "Find ∑ s(n,108) for 1 ≤ n ≤ 1011."
      ]
    },
    {
      "id": "5900f5131000cf542c510025",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 422: Sequence of points on a hyperbola",
      "tests": [
        "assert.strictEqual(euler422(), 92060460, 'message: <code>euler422()</code> should return 92060460.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler422() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler422();"
      ],
      "description": [
        "Let H be the hyperbola defined by the equation 12x2 + 7xy - 12y2 = 625.",
        "",
        "Next, define X as the point (7, 1). It can be seen that X is in H.",
        "",
        "Now we define a sequence of points in H, {Pi : i ≥ 1}, as:",
        " P1 = (13, 61/4).",
        " P2 = (-43/6, -4).",
        " For i > 2, Pi is the unique point in H that is different from Pi-1 and such that line PiPi-1 is parallel to line Pi-2X. It can be shown that Pi is well-defined, and that its coordinates are always rational.",
        "You are given that P3  = (-19/2, -229/24), P4 = (1267/144, -37/12) and P7 = (17194218091/143327232, 274748766781/1719926784).",
        "",
        "Find Pn for n = 1114 in the following format:If Pn = (a/b, c/d) where the fractions are in lowest terms and the denominators are positive, then the answer is (a + b + c + d) mod 1 000 000 007.",
        "",
        "For n = 7, the answer would have been: 806236837."
      ]
    },
    {
      "id": "5900f5141000cf542c510027",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 423: Consecutive die throws",
      "tests": [
        "assert.strictEqual(euler423(), 653972374, 'message: <code>euler423()</code> should return 653972374.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler423() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler423();"
      ],
      "description": [
        "Let n be a positive integer.",
        "A 6-sided die is thrown n times. Let c be the number of pairs of consecutive throws that give the same value.",
        "",
        "For example, if n = 7 and the values of the die throws are (1,1,5,6,6,6,3), then the following pairs of consecutive throws give the same value:",
        "(1,1,5,6,6,6,3)",
        "(1,1,5,6,6,6,3)",
        "(1,1,5,6,6,6,3)",
        "Therefore, c = 3 for (1,1,5,6,6,6,3).",
        "",
        "Define C(n) as the number of outcomes of throwing a 6-sided die n times such that c does not exceed π(n).1",
        "For example, C(3) = 216, C(4) = 1290, C(11) = 361912500 and C(24) = 4727547363281250000.",
        "",
        "Define S(L) as ∑ C(n) for 1 ≤ n ≤ L.",
        "For example, S(50) mod 1 000 000 007 = 832833871.",
        "",
        "Find S(50 000 000) mod 1 000 000 007.",
        "",
        "1 π denotes the prime-counting function, i.e. π(n) is the number of primes ≤ n."
      ]
    },
    {
      "id": "5900f5141000cf542c510026",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 424: Kakuro",
      "tests": [
        "assert.strictEqual(euler424(), 1059760019628, 'message: <code>euler424()</code> should return 1059760019628.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler424() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler424();"
      ],
      "description": [
        "The above is an example of a cryptic kakuro (also known as cross sums, or even sums cross) puzzle, with its final solution on the right. (The common rules of kakuro puzzles can be found easily on numerous internet sites. Other related information can also be currently found at krazydad.com whose author has provided the puzzle data for this challenge.)",
        "",
        "The downloadable text file (kakuro200.txt) contains the description of 200 such puzzles, a mix of 5x5 and 6x6 types. The first puzzle in the file is the above example which is coded as follows:",
        "",
        "6,X,X,(vCC),(vI),X,X,X,(hH),B,O,(vCA),(vJE),X,(hFE,vD),O,O,O,O,(hA),O,I,(hJC,vB),O,O,(hJC),H,O,O,O,X,X,X,(hJE),O,O,X",
        "",
        "The first character is a numerical digit indicating the size of the information grid. It would be either a 6 (for a 5x5 kakuro puzzle) or a 7 (for a 6x6 puzzle) followed by a comma (,). The extra top line and left column are needed to insert information.",
        "",
        "The content of each cell is then described and followed by a comma, going left to right and starting with the top line.",
        "X = Gray cell, not required to be filled by a digit.",
        "O (upper case letter)= White empty cell to be filled by a digit.",
        "A = Or any one of the upper case letters from A to J to be replaced by its equivalent digit in the solved puzzle.",
        "( ) = Location of the encrypted sums. Horizontal sums are preceded by a lower case \"h\" and vertical sums are preceded by a lower case \"v\". Those are followed by one or two upper case letters depending if the sum is a single digit or double digit one. For double digit sums, the first letter would be for the \"tens\" and the second one for the \"units\". When the cell must contain information for both a horizontal and a vertical sum, the first one is always for the horizontal sum and the two are separated by a comma within the same set of brackets, ex.: (hFE,vD). Each set of brackets is also immediately followed by a comma.",
        "",
        "The description of the last cell is followed by a Carriage Return/Line Feed (CRLF) instead of a comma.",
        "",
        "The required answer to each puzzle is based on the value of each letter necessary to arrive at the solution and according to the alphabetical order. As indicated under the example puzzle, its answer would be 8426039571. At least 9 out of the 10 encrypting letters are always part of the problem description. When only 9 are given, the missing one must be assigned the remaining digit.",
        "",
        "You are given that the sum of the answers for the first 10 puzzles in the file is 64414157580.",
        "",
        "Find the sum of the answers for the 200 puzzles."
      ]
    },
    {
      "id": "5900f5151000cf542c510028",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 425: Prime connection",
      "tests": [
        "assert.strictEqual(euler425(), 46479497324, 'message: <code>euler425()</code> should return 46479497324.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler425() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler425();"
      ],
      "description": [
        "Two positive numbers A and B are said to be connected (denoted by \"A ↔ B\") if one of these conditions holds:",
        "(1) A and B have the same length and differ in exactly one digit; for example, 123 ↔ 173.",
        "(2) Adding one digit to the left of A (or B) makes B (or A); for example, 23 ↔ 223 and 123 ↔ 23.",
        "",
        "",
        "We call a prime P a 2's relative if there exists a chain of connected primes between 2 and P and no prime in the chain exceeds P.",
        "",
        "",
        "For example, 127 is a 2's relative. One of the possible chains is shown below:",
        "2 ↔ 3 ↔ 13 ↔ 113 ↔ 103 ↔ 107 ↔ 127",
        "However, 11 and 103 are not 2's relatives.",
        "",
        "",
        "Let F(N) be the sum of the primes ≤ N which are not 2's relatives.",
        "We can verify that F(103) = 431 and F(104) = 78728.",
        "",
        "",
        "Find F(107)."
      ]
    },
    {
      "id": "5900f5171000cf542c510029",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 426: Box-ball system",
      "tests": [
        "assert.strictEqual(euler426(), 31591886008, 'message: <code>euler426()</code> should return 31591886008.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler426() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler426();"
      ],
      "description": [
        "Consider an infinite row of boxes. Some of the boxes contain a ball. For example, an initial configuration of 2 consecutive occupied boxes followed by 2 empty boxes, 2 occupied boxes, 1 empty box, and 2 occupied boxes can be denoted by the sequence (2, 2, 2, 1, 2), in which the number of consecutive occupied and empty boxes appear alternately.",
        "",
        "",
        "A turn consists of moving each ball exactly once according to the following rule: Transfer the leftmost ball which has not been moved to the nearest empty box to its right.",
        "",
        "",
        "After one turn the sequence (2, 2, 2, 1, 2) becomes (2, 2, 1, 2, 3) as can be seen below; note that we begin the new sequence starting at the first occupied box.",
        "",
        "",
        "",
        "",
        "",
        "",
        "A system like this is called a Box-Ball System or BBS for short.",
        "",
        "",
        "It can be shown that after a sufficient number of turns, the system evolves to a state where the consecutive numbers of occupied boxes is invariant. In the example below, the consecutive numbers of occupied boxes evolves to [1, 2, 3]; we shall call this the final state.",
        "",
        "",
        "",
        "",
        "",
        "",
        "We define the sequence {ti}:s0 = 290797",
        "sk+1 = sk2 mod 50515093",
        "tk = (sk mod 64) + 1",
        "",
        "Starting from the initial configuration (t0, t1, …, t10), the final state becomes [1, 3, 10, 24, 51, 75].",
        "Starting from the initial configuration (t0, t1, …, t10 000 000), find the final state.",
        "Give as your answer the sum of the squares of the elements of the final state. For example, if the final state is [1, 2, 3] then 14 ( = 12 + 22 + 32) is your answer."
      ]
    },
    {
      "id": "5900f5181000cf542c51002a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 427: n-sequences",
      "tests": [
        "assert.strictEqual(euler427(), 97138867, 'message: <code>euler427()</code> should return 97138867.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler427() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler427();"
      ],
      "description": [
        "A sequence of integers S = {si} is called an n-sequence if it has n elements and each element si satisfies 1 ≤ si ≤ n. Thus there are nn distinct n-sequences in total.",
        "For example, the sequence S = {1, 5, 5, 10, 7, 7, 7, 2, 3, 7} is a 10-sequence.",
        "",
        "For any sequence S, let L(S) be the length of the longest contiguous subsequence of S with the same value.",
        "For example, for the given sequence S above, L(S) = 3, because of the three consecutive 7's.",
        "",
        "Let f(n) = ∑ L(S) for all n-sequences S.",
        "",
        "For example, f(3) = 45, f(7) = 1403689 and f(11) = 481496895121.",
        "",
        "Find f(7 500 000) mod 1 000 000 009."
      ]
    },
    {
      "id": "5900f5191000cf542c51002b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 428: About Project Euler",
      "tests": [
        "assert.strictEqual(euler428(), 747215561862, 'message: <code>euler428()</code> should return 747215561862.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler428() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler428();"
      ],
      "description": [
        ""
      ]
    },
    {
      "id": "5900f5191000cf542c51002c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 429: Sum of squares of unitary divisors",
      "tests": [
        "assert.strictEqual(euler429(), 98792821, 'message: <code>euler429()</code> should return 98792821.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler429() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler429();"
      ],
      "description": [
        "A unitary divisor d of a number n is a divisor of n that has the property gcd(d, n/d) = 1.",
        "The unitary divisors of 4! = 24 are 1, 3, 8 and 24.",
        "The sum of their squares is 12 + 32 + 82 + 242 = 650.",
        "",
        "",
        "Let S(n) represent the sum of the squares of the unitary divisors of n. Thus S(4!)=650.",
        "",
        "",
        "Find S(100 000 000!) modulo 1 000 000 009."
      ]
    },
    {
      "id": "5900f51a1000cf542c51002d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 430: Range flips",
      "tests": [
        "assert.strictEqual(euler430(), 5000624921.38, 'message: <code>euler430()</code> should return 5000624921.38.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler430() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler430();"
      ],
      "description": [
        "N disks are placed in a row, indexed 1 to N from left to right.",
        "Each disk has a black side and white side. Initially all disks show their white side.",
        "",
        "At each turn, two, not necessarily distinct, integers A and B between 1 and N (inclusive) are chosen uniformly at random.",
        "All disks with an index from A to B (inclusive) are flipped.",
        "",
        "The following example shows the case N = 8. At the first turn A = 5 and B = 2, and at the second turn A = 4 and B = 6.",
        "",
        "",
        "",
        "Let E(N, M) be the expected number of disks that show their white side after M turns.",
        "We can verify that E(3, 1) = 10/9, E(3, 2) = 5/3, E(10, 4) ≈ 5.157 and E(100, 10) ≈ 51.893.",
        "",
        "Find E(1010, 4000).",
        "Give your answer rounded to 2 decimal places behind the decimal point."
      ]
    },
    {
      "id": "5900f51b1000cf542c51002e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 431: Square Space Silo",
      "tests": [
        "assert.strictEqual(euler431(), 23.386029052, 'message: <code>euler431()</code> should return 23.386029052.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler431() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler431();"
      ],
      "description": [
        "Fred the farmer arranges to have a new storage silo installed on his farm and having an obsession for all things square he is absolutely devastated when he discovers that it is circular. Quentin, the representative from the company that installed the silo, explains that they only manufacture cylindrical silos, but he points out that it is resting on a square base. Fred is not amused and insists that it is removed from his property.",
        "",
        "Quick thinking Quentin explains that when granular materials are delivered from above a conical slope is formed and the natural angle made with the horizontal is called the angle of repose. For example if the angle of repose, $\\alpha = 30$ degrees, and grain is delivered at the centre of the silo then a perfect cone will form towards the top of the cylinder. In the case of this silo, which has a diameter of 6m, the amount of space wasted would be approximately 32.648388556 m3. However, if grain is delivered at a point on the top which has a horizontal distance of $x$ metres from the centre then a cone with a strangely curved and sloping base is formed. He shows Fred a picture.",
        "",
        "",
        "   ",
        "",
        "We shall let the amount of space wasted in cubic metres be given by $V(x)$. If $x = 1.114785284$, which happens to have three squared decimal places, then the amount of space wasted, $V(1.114785284) \\approx 36$. Given the range of possible solutions to this problem there is exactly one other option: $V(2.511167869) \\approx 49$. It would be like knowing that the square is king of the silo, sitting in splendid glory on top of your grain.",
        "",
        "Fred's eyes light up with delight at this elegant resolution, but on closer inspection of Quentin's drawings and calculations his happiness turns to despondency once more. Fred points out to Quentin that it's the radius of the silo that is 6 metres, not the diameter, and the angle of repose for his grain is 40 degrees. However, if Quentin can find a set of solutions for this particular silo then he will be more than happy to keep it.",
        "",
        "If Quick thinking Quentin is to satisfy frustratingly fussy Fred the farmer's appetite for all things square then determine the values of $x$ for all possible square space wastage options and calculate $\\sum x$ correct to 9 decimal places."
      ]
    },
    {
      "id": "5900f51e1000cf542c510030",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 432: Totient sum",
      "tests": [
        "assert.strictEqual(euler432(), 754862080, 'message: <code>euler432()</code> should return 754862080.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler432() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler432();"
      ],
      "description": [
        "Let S(n,m) = ∑φ(n × i) for 1 ≤ i ≤ m. (φ is Euler's totient function)",
        "You are given that S(510510,106 )= 45480596821125120. ",
        "",
        "",
        "Find S(510510,1011).",
        "Give the last 9 digits of your answer."
      ]
    },
    {
      "id": "5900f51d1000cf542c51002f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 433: Steps in Euclid's algorithm",
      "tests": [
        "assert.strictEqual(euler433(), 326624372659664, 'message: <code>euler433()</code> should return 326624372659664.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler433() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler433();"
      ],
      "description": [
        "Let E(x0, y0) be the number of steps it takes to determine the greatest common divisor of x0 and y0 with Euclid's algorithm. More formally:x1 = y0, y1 = x0 mod y0xn = yn-1, yn = xn-1 mod yn-1",
        "E(x0, y0) is the smallest n such that yn = 0.",
        "",
        "",
        "We have E(1,1) = 1, E(10,6) = 3 and E(6,10) = 4.",
        "",
        "",
        "Define S(N) as the sum of E(x,y) for 1 ≤ x,y ≤ N.",
        "We have S(1) = 1, S(10) = 221 and S(100) = 39826.",
        "",
        "",
        "Find S(5·106)."
      ]
    },
    {
      "id": "5900f51f1000cf542c510031",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 434: Rigid graphs",
      "tests": [
        "assert.strictEqual(euler434(), 863253606, 'message: <code>euler434()</code> should return 863253606.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler434() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler434();"
      ],
      "description": [
        "Recall that a graph is a collection of vertices and edges connecting the vertices, and that two vertices connected by an edge are called adjacent.",
        "Graphs can be embedded in Euclidean space by associating each vertex with a point in the Euclidean space.",
        "A flexible graph is an embedding of a graph where it is possible to move one or more vertices continuously so that the distance between at least two nonadjacent vertices is altered while the distances between each pair of adjacent vertices is kept constant.",
        "A rigid graph is an embedding of a graph which is not flexible.",
        "Informally, a graph is rigid if by replacing the vertices with fully rotating hinges and the edges with rods that are unbending and inelastic, no parts of the graph can be moved independently from the rest of the graph.",
        "",
        "The grid graphs embedded in the Euclidean plane are not rigid, as the following animation demonstrates:",
        "However, one can make them rigid by adding diagonal edges to the cells. For example, for the 2x3 grid graph, there are 19 ways to make the graph rigid:",
        "Note that for the purposes of this problem, we do not consider changing the orientation of a diagonal edge or adding both diagonal edges to a cell as a different way of making a grid graph rigid.",
        "",
        "Let R(m,n) be the number of ways to make the m × n grid graph rigid. ",
        "E.g. R(2,3) = 19 and R(5,5) = 23679901",
        "",
        "Define S(N) as ∑R(i,j) for 1 ≤ i, j ≤ N.",
        "E.g. S(5) = 25021721.",
        "Find S(100), give your answer modulo 1000000033"
      ]
    },
    {
      "id": "5900f5201000cf542c510032",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 435: Polynomials of Fibonacci numbers",
      "tests": [
        "assert.strictEqual(euler435(), 252541322550, 'message: <code>euler435()</code> should return 252541322550.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler435() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler435();"
      ],
      "description": [
        "The Fibonacci numbers {fn, n ≥ 0} are defined recursively as fn = fn-1 + fn-2 with base cases f0 = 0 and f1 = 1.",
        "Define the polynomials {Fn, n ≥ 0} as Fn(x) = ∑fixi for 0 ≤ i ≤ n.",
        "For example, F7(x) = x + x2 + 2x3 + 3x4 + 5x5 + 8x6 + 13x7, and F7(11) = 268357683.",
        "Let n = 1015. Find the sum [∑0≤x≤100 Fn(x)] mod 1307674368000 (= 15!)."
      ]
    },
    {
      "id": "5900f5221000cf542c510033",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 436: Unfair wager",
      "tests": [
        "assert.strictEqual(euler436(), 0.5276662759, 'message: <code>euler436()</code> should return 0.5276662759.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler436() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler436();"
      ],
      "description": [
        "Julie proposes the following wager to her sister Louise.",
        "She suggests they play a game of chance to determine who will wash the dishes.",
        "For this game, they shall use a generator of independent random numbers uniformly distributed between 0 and 1.",
        "The game starts with S = 0.",
        "The first player, Louise, adds to S different random numbers from the generator until S > 1 and records her last random number 'x'.",
        "The second player, Julie, continues adding to S different random numbers from the generator until S > 2 and records her last random number 'y'.",
        "The player with the highest number wins and the loser washes the dishes, i.e. if y > x the second player wins.",
        "",
        "For example, if the first player draws 0.62 and 0.44, the first player turn ends since 0.62+0.44 > 1 and x = 0.44.",
        "If the second players draws 0.1, 0.27 and 0.91, the second player turn ends since 0.62+0.44+0.1+0.27+0.91 > 2 and y = 0.91.",
        "Since y > x, the second player wins.",
        "",
        "Louise thinks about it for a second, and objects: \"That's not fair\".",
        "What is the probability that the second player wins?",
        "Give your answer rounded to 10 places behind the decimal point in the form 0.abcdefghij"
      ]
    },
    {
      "id": "5900f5241000cf542c510036",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 437: Fibonacci primitive roots",
      "tests": [
        "assert.strictEqual(euler437(), 74204709657207, 'message: <code>euler437()</code> should return 74204709657207.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler437() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler437();"
      ],
      "description": [
        "When we calculate 8n modulo 11 for n=0 to 9 we get: 1, 8, 9, 6, 4, 10, 3, 2, 5, 7.",
        "As we see all possible values from 1 to 10 occur. So 8 is a primitive root of 11.",
        "But there is more:",
        "If we take a closer look we see:",
        "1+8=9",
        "8+9=17≡6 mod 11",
        "9+6=15≡4 mod 11",
        "6+4=10",
        "4+10=14≡3 mod 11",
        "10+3=13≡2 mod 11",
        "3+2=5",
        "2+5=7",
        "5+7=12≡1 mod 11.",
        "",
        "So the powers of 8 mod 11 are cyclic with period 10, and 8n + 8n+1 ≡ 8n+2 (mod 11).",
        "8 is called a Fibonacci primitive root of 11.",
        "Not every prime has a Fibonacci primitive root.",
        "There are 323 primes less than 10000 with one or more Fibonacci primitive roots and the sum of these primes is 1480491.",
        "Find the sum of the primes less than 100,000,000 with at least one Fibonacci primitive root."
      ]
    },
    {
      "id": "5900f5231000cf542c510034",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 438: Integer part of polynomial equation's solutions",
      "tests": [
        "assert.strictEqual(euler438(), 2046409616809, 'message: <code>euler438()</code> should return 2046409616809.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler438() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler438();"
      ],
      "description": [
        "For an n-tuple of integers t = (a1, ..., an), let (x1, ..., xn) be the solutions of the polynomial equation xn + a1xn-1 + a2xn-2 + ... + an-1x + an = 0.",
        "",
        "",
        "Consider the following two conditions:",
        "x1, ..., xn are all real.",
        "If x1, ..., xn are sorted, ⌊xi⌋ = i for 1 ≤ i ≤ n. (⌊·⌋: floor function.)",
        "",
        "In the case of n = 4, there are 12 n-tuples of integers which satisfy both conditions.",
        "We define S(t) as the sum of the absolute values of the integers in t.",
        "For n = 4 we can verify that ∑S(t) = 2087 for all n-tuples t which satisfy both conditions.",
        "",
        "",
        "Find ∑S(t) for n = 7."
      ]
    },
    {
      "id": "5900f5231000cf542c510035",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 439: Sum of sum of divisors",
      "tests": [
        "assert.strictEqual(euler439(), 968697378, 'message: <code>euler439()</code> should return 968697378.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler439() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler439();"
      ],
      "description": [
        "Let d(k) be the sum of all divisors of k.",
        "We define the function S(N) = ∑1≤i≤N ∑1≤j≤Nd(i·j).",
        "For example, S(3) = d(1) + d(2) + d(3) + d(2) + d(4) + d(6) + d(3) + d(6) + d(9) = 59.",
        "",
        "You are given that S(103) = 563576517282 and S(105) mod 109 = 215766508.",
        "Find S(1011) mod 109."
      ]
    },
    {
      "id": "5900f5241000cf542c510037",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 440: GCD and Tiling",
      "tests": [
        "assert.strictEqual(euler440(), 970746056, 'message: <code>euler440()</code> should return 970746056.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler440() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler440();"
      ],
      "description": [
        "We want to tile a board of length n and height 1 completely, with either 1 × 2 blocks or 1 × 1 blocks with a single decimal digit on top:",
        "",
        "For example, here are some of the ways to tile a board of length n = 8:",
        "",
        "Let T(n) be the number of ways to tile a board of length n as described above.",
        "",
        "For example, T(1) = 10 and T(2) = 101.",
        "",
        "Let S(L) be the triple sum ∑a,b,c gcd(T(ca), T(cb)) for 1 ≤ a, b, c ≤ L.",
        "For example:",
        "S(2) = 10444",
        "S(3) = 1292115238446807016106539989",
        "S(4) mod 987 898 789 = 670616280.",
        "",
        "Find S(2000) mod 987 898 789."
      ]
    },
    {
      "id": "5900f5261000cf542c510038",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 441: The inverse summation of coprime couples",
      "tests": [
        "assert.strictEqual(euler441(), 5000088.8395, 'message: <code>euler441()</code> should return 5000088.8395.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler441() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler441();"
      ],
      "description": [
        "For an integer M, we define R(M) as the sum of 1/(p·q) for all the integer pairs p and q which satisfy all of these conditions:",
        "",
        " 1 ≤ p < q ≤ M",
        " p + q ≥ M",
        " p and q are coprime.",
        "",
        "We also define S(N) as the sum of R(i) for 2 ≤ i ≤ N.",
        "We can verify that S(2) = R(2) = 1/2, S(10) ≈ 6.9147 and S(100) ≈ 58.2962.",
        "",
        "",
        "Find S(107). Give your answer rounded to four decimal places."
      ]
    },
    {
      "id": "5900f5271000cf542c510039",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 442: Eleven-free integers",
      "tests": [
        "assert.strictEqual(euler442(), 1295552661530920200, 'message: <code>euler442()</code> should return 1295552661530920200.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler442() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler442();"
      ],
      "description": [
        "An integer is called eleven-free if its decimal expansion does not contain any substring representing a power of 11 except 1.",
        "",
        "For example, 2404 and 13431 are eleven-free, while 911 and 4121331 are not.",
        "",
        "Let E(n) be the nth positive eleven-free integer. For example, E(3) = 3, E(200) = 213 and E(500 000) = 531563.",
        "",
        "Find E(1018)."
      ]
    },
    {
      "id": "5900f5271000cf542c51003a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 443: GCD sequence",
      "tests": [
        "assert.strictEqual(euler443(), 2744233049300770, 'message: <code>euler443()</code> should return 2744233049300770.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler443() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler443();"
      ],
      "description": [
        "Let g(n) be a sequence defined as follows:",
        "g(4) = 13,",
        "g(n) = g(n-1) + gcd(n, g(n-1)) for n > 4.",
        "",
        "The first few values are:",
        "",
        "    n4567891011121314151617181920...",
        "    g(n)1314161718272829303132333451545560...",
        "    ",
        "",
        "You are given that g(1 000) = 2524 and g(1 000 000) = 2624152.",
        "",
        "Find g(1015)."
      ]
    },
    {
      "id": "5900f52a1000cf542c51003b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 444: The Roundtable Lottery",
      "tests": [
        "assert.strictEqual(euler444(), 1.200856722e+263, 'message: <code>euler444()</code> should return 1.200856722e+263.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler444() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler444();"
      ],
      "description": [
        "A group of p people decide to sit down at a round table and play a lottery-ticket trading game. Each person starts off with a randomly-assigned, unscratched lottery ticket. Each ticket, when scratched, reveals a whole-pound prize ranging anywhere from £1 to £p, with no two tickets alike. The goal of the game is for each person to maximize his ticket winnings upon leaving the game.",
        "",
        "An arbitrary person is chosen to be the first player. Going around the table, each player has only one of two options:",
        "",
        "1. The player can scratch his ticket and reveal its worth to everyone at the table.",
        "2. The player can trade his unscratched ticket for a previous player's scratched ticket, and then leave the game with that ticket. The previous player then scratches his newly-acquired ticket and reveals its worth to everyone at the table.",
        "",
        "The game ends once all tickets have been scratched. All players still remaining at the table must leave with their currently-held tickets.",
        "",
        "Assume that each player uses the optimal strategy for maximizing the expected value of his ticket winnings. ",
        "",
        "Let E(p) represent the expected number of players left at the table when the game ends in a game consisting of p players (e.g. E(111) = 5.2912 when rounded to 5 significant digits).",
        "",
        "Let S1(N) =  E(p)",
        "Let Sk(N) =  Sk-1(p) for k > 1",
        "",
        "Find S20(1014) and write the answer in scientific notation rounded to 10 significant digits. Use a lowercase e to separate mantissa and exponent (e.g. S3(100) = 5.983679014e5)."
      ]
    },
    {
      "id": "5900f52a1000cf542c51003c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 445: Retractions A",
      "tests": [
        "assert.strictEqual(euler445(), 659104042, 'message: <code>euler445()</code> should return 659104042.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler445() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler445();"
      ],
      "description": [
        "For every integer n>1, the family of functions fn,a,b  is defined ",
        "by fn,a,b(x)≡ax+b mod n for a,b,x integer and  0<a<n, 0≤b<n, 0≤x<n.",
        "We will call fn,a,b a retraction if fn,a,b(fn,a,b(x))≡fn,a,b(x) mod n for every 0≤x<n.",
        "Let R(n) be the number of retractions for n.",
        "",
        "",
        "You are given that",
        "∑ R(c) for c=C(100 000,k), and 1 ≤ k ≤99 999 ≡628701600 (mod 1 000 000 007).",
        "(C(n,k) is the binomial coefficient).",
        " ",
        "Find ∑ R(c) for c=C(10 000 000,k), and 1 ≤k≤ 9 999 999.",
        "Give your answer modulo 1 000 000 007."
      ]
    },
    {
      "id": "5900f52c1000cf542c51003d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 446: Retractions B",
      "tests": [
        "assert.strictEqual(euler446(), 907803852, 'message: <code>euler446()</code> should return 907803852.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler446() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler446();"
      ],
      "description": [
        "For every integer n>1, the family of functions fn,a,b  is defined ",
        "by fn,a,b(x)≡ax+b mod n for a,b,x integer and  0<a<n, 0≤b<n, 0≤x<n.",
        "We will call fn,a,b a retraction if fn,a,b(fn,a,b(x))≡fn,a,b(x) mod n for every 0≤x<n.",
        "Let R(n) be the number of retractions for n.",
        "",
        "",
        "F(N)=∑R(n4+4) for 1≤n≤N.  ",
        "F(1024)=77532377300600.",
        "",
        "Find F(107) (mod 1 000 000 007)"
      ]
    },
    {
      "id": "5900f52c1000cf542c51003e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 447: Retractions C",
      "tests": [
        "assert.strictEqual(euler447(), 530553372, 'message: <code>euler447()</code> should return 530553372.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler447() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler447();"
      ],
      "description": [
        "For every integer n>1, the family of functions fn,a,b  is defined ",
        "by fn,a,b(x)≡ax+b mod n for a,b,x integer and  0<a<n, 0≤b<n, 0≤x<n.",
        "We will call fn,a,b a retraction if fn,a,b(fn,a,b(x))≡fn,a,b(x) mod n for every 0≤x<n.",
        "Let R(n) be the number of retractions for n.",
        "",
        "",
        "F(N)=∑R(n) for 2≤n≤N.",
        "F(107)≡638042271 (mod 1 000 000 007).",
        "",
        " ",
        "Find F(1014) (mod 1 000 000 007)."
      ]
    },
    {
      "id": "5900f52c1000cf542c51003f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 448: Average least common multiple",
      "tests": [
        "assert.strictEqual(euler448(), 106467648, 'message: <code>euler448()</code> should return 106467648.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler448() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler448();"
      ],
      "description": [
        "The function lcm(a,b) denotes the least common multiple of a and b.",
        "Let A(n) be the average of the values of lcm(n,i) for 1≤i≤n.",
        "E.g: A(2)=(2+2)/2=2 and A(10)=(10+10+30+20+10+30+70+40+90+10)/10=32. ",
        "",
        "Let S(n)=∑A(k) for 1≤k≤n.",
        "S(100)=122726.",
        "",
        "",
        "Find S(99999999019) mod 999999017."
      ]
    },
    {
      "id": "5900f52d1000cf542c510040",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 449: Chocolate covered candy",
      "tests": [
        "assert.strictEqual(euler449(), 103.37870096, 'message: <code>euler449()</code> should return 103.37870096.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler449() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler449();"
      ],
      "description": [
        "Phil the confectioner is making a new batch of chocolate covered candy. Each candy centre is shaped like an ellipsoid of revolution defined by the equation: b2x2 + b2y2 + a2z2 = a2b2.",
        "",
        "",
        "Phil wants to know how much chocolate is needed to cover one candy centre with a uniform coat of chocolate one millimeter thick.",
        "If a=1 mm and b=1 mm, the amount of chocolate required is ",
        "    ",
        "    283",
        "    π mm3",
        "",
        "If a=2 mm and b=1 mm, the amount of chocolate required is approximately 60.35475635 mm3.",
        "",
        "",
        "Find the amount of chocolate in mm3 required if a=3 mm and b=1 mm. Give your answer as the number rounded to 8 decimal places behind the decimal point."
      ]
    },
    {
      "id": "5900f52e1000cf542c510041",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 450: Hypocycloid and Lattice points",
      "tests": [
        "assert.strictEqual(euler450(), 583333163984220900, 'message: <code>euler450()</code> should return 583333163984220900.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler450() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler450();"
      ],
      "description": [
        "A hypocycloid is the curve drawn by a point on a small circle rolling inside a larger circle. The parametric equations of a hypocycloid centered at the origin, and starting at the right most point is given by:",
        "$x(t) = (R - r) \\cos(t) + r \\cos(\\frac {R - r} r t)$",
        "$y(t) = (R - r) \\sin(t) - r \\sin(\\frac {R - r} r t)$",
        "Where R is the radius of the large circle and r the radius of the small circle.",
        "",
        "",
        "Let $C(R, r)$ be the set of distinct points with integer coordinates on the hypocycloid with radius R and r and for which there is a corresponding value of t such that $\\sin(t)$ and $\\cos(t)$ are rational numbers.",
        "",
        "Let $S(R, r) = \\sum_{(x,y) \\in C(R, r)} |x| + |y|$ be the sum of the absolute values of the x and y coordinates of the points in $C(R, r)$.",
        "",
        "",
        "Let $T(N) = \\sum_{R = 3}^N \\sum_{r=1}^{\\lfloor \\frac {R - 1} 2 \\rfloor} S(R, r)$ be the sum of $S(R, r)$ for R and r positive integers, $R\\leq N$  and $2r < R$.",
        "",
        "",
        "You are given:C(3, 1) =",
        "{(3, 0), (-1, 2), (-1,0), (-1,-2)}",
        "C(2500, 1000) =",
        "{(2500, 0), (772, 2376), (772, -2376), (516, 1792),",
        " (516, -1792), (500, 0), (68, 504), (68, -504),(-1356, 1088), (-1356, -1088), (-1500, 1000), (-1500, -1000)}",
        "",
        "Note: (-625, 0) is not an element of C(2500, 1000) because $\\sin(t)$ is not a rational number for the corresponding values of t.",
        "",
        "",
        "S(3, 1) = (|3| + |0|) + (|-1| + |2|) + (|-1| + |0|) + (|-1| + |-2|) = 10",
        "",
        "T(3) = 10; T(10) = 524 ;T(100) = 580442; T(103) = 583108600.",
        "",
        "",
        "Find T(106)."
      ]
    },
    {
      "id": "5900f5311000cf542c510042",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 451: Modular inverses",
      "tests": [
        "assert.strictEqual(euler451(), 153651073760956, 'message: <code>euler451()</code> should return 153651073760956.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler451() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler451();"
      ],
      "description": [
        "Consider the number 15.",
        "There are eight positive numbers less than 15 which are coprime to 15: 1, 2, 4, 7, 8, 11, 13, 14.",
        "The modular inverses of these numbers modulo 15 are: 1, 8, 4, 13, 2, 11, 7, 14  ",
        "because",
        "1*1 mod 15=1",
        "2*8=16 mod 15=1",
        "4*4=16 mod 15=1",
        "7*13=91 mod 15=1",
        "11*11=121 mod 15=1",
        "14*14=196 mod 15=1",
        "",
        "Let I(n) be the largest positive number m smaller than n-1 such that the modular inverse of m modulo n equals m itself.",
        "So I(15)=11.",
        "Also I(100)=51 and I(7)=1.",
        "",
        "Find ∑I(n) for 3≤n≤2·107"
      ]
    },
    {
      "id": "5900f5311000cf542c510043",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 452: Long Products",
      "tests": [
        "assert.strictEqual(euler452(), 345558983, 'message: <code>euler452()</code> should return 345558983.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler452() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler452();"
      ],
      "description": [
        "Define F(m,n) as the number of n-tuples of positive integers for which the product of the elements doesn't exceed m.",
        "F(10, 10) = 571.",
        "F(106, 106) mod 1 234 567 891 = 252903833.",
        "Find F(109, 109) mod 1 234 567 891."
      ]
    },
    {
      "id": "5900f5311000cf542c510044",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 453: Lattice Quadrilaterals",
      "tests": [
        "assert.strictEqual(euler453(), 104354107, 'message: <code>euler453()</code> should return 104354107.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler453() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler453();"
      ],
      "description": [
        "A simple quadrilateral is a polygon that has four distinct vertices, has no straight angles and does not self-intersect.",
        "",
        "Let Q(m, n) be the number of simple quadrilaterals whose vertices are lattice points with coordinates (x,y) satisfying 0 ≤ x ≤ m and 0 ≤ y ≤ n.",
        "",
        "For example, Q(2, 2) = 94 as can be seen below:",
        "",
        "It can also be verified that Q(3, 7) = 39590, Q(12, 3) = 309000 and Q(123, 45) = 70542215894646.",
        "",
        "Find Q(12345, 6789) mod 135707531."
      ]
    },
    {
      "id": "5900f5331000cf542c510045",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 454: Diophantine reciprocals III",
      "tests": [
        "assert.strictEqual(euler454(), 5435004633092, 'message: <code>euler454()</code> should return 5435004633092.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler454() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler454();"
      ],
      "description": [
        "In the following equation x, y, and n are positive integers.",
        "",
        "1x",
        " + ",
        "1y",
        " = ",
        "1n",
        "",
        "For a limit L we define F(L) as the number of solutions which satisfy x < y ≤ L.",
        "",
        "We can verify that F(15) = 4 and F(1000) = 1069.",
        "Find F(1012)."
      ]
    },
    {
      "id": "5900f5331000cf542c510046",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 455: Powers With Trailing Digits",
      "tests": [
        "assert.strictEqual(euler455(), 450186511399999, 'message: <code>euler455()</code> should return 450186511399999.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler455() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler455();"
      ],
      "description": [
        "Let f(n) be the largest positive integer x less than 109 such that the last 9 digits of nx form the number x (including leading zeros), or zero if no such integer exists.",
        "",
        "For example:",
        "",
        "f(4) = 411728896 (4411728896 = ...490411728896) ",
        "f(10) = 0",
        "f(157) = 743757 (157743757 = ...567000743757)",
        "Σf(n), 2 ≤ n ≤ 103 = 442530011399",
        "Find Σf(n), 2 ≤ n ≤ 106."
      ]
    },
    {
      "id": "5900f5351000cf542c510047",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 456: Triangles containing the origin II",
      "tests": [
        "assert.strictEqual(euler456(), 333333208685971500, 'message: <code>euler456()</code> should return 333333208685971500.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler456() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler456();"
      ],
      "description": [
        "Define:xn = (1248n mod 32323) - 16161yn = (8421n mod 30103) - 15051",
        "Pn = {(x1, y1), (x2, y2), ..., (xn, yn)}",
        "",
        "",
        "For example, P8 = {(-14913, -6630), (-10161, 5625), (5226, 11896), (8340, -10778), (15852, -5203), (-15165, 11295), (-1427, -14495), (12407, 1060)}.",
        "",
        "Let C(n) be the number of triangles whose vertices are in Pn which contain the origin in the interior.",
        "",
        "",
        "Examples:",
        "C(8) = 20",
        "C(600) = 8950634",
        "C(40 000) = 2666610948988",
        "",
        "",
        "Find C(2 000 000)."
      ]
    },
    {
      "id": "5900f5361000cf542c510048",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 457: A polynomial modulo the square of a prime",
      "tests": [
        "assert.strictEqual(euler457(), 2647787126797397000, 'message: <code>euler457()</code> should return 2647787126797397000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler457() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler457();"
      ],
      "description": [
        "Let f(n) = n2 - 3n - 1.",
        "Let p be a prime.",
        "Let R(p) be the smallest positive integer n such that f(n) mod p2 = 0 if such an integer n exists, otherwise R(p) = 0.",
        "",
        "",
        "Let SR(L) be ∑R(p) for all primes not exceeding L.",
        "",
        "",
        "Find SR(107)."
      ]
    },
    {
      "id": "5900f5361000cf542c510049",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 458: Permutations of Project",
      "tests": [
        "assert.strictEqual(euler458(), 423341841, 'message: <code>euler458()</code> should return 423341841.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler458() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler458();"
      ],
      "description": [
        "Consider the alphabet A made out of the letters of the word \"project\": A={c,e,j,o,p,r,t}.",
        "Let T(n) be the number of strings of length n consisting of letters from A that do not have a substring that is one of the 5040 permutations of \"project\".",
        "",
        "T(7)=77-7!=818503.",
        "",
        "",
        "Find T(1012). Give the last 9 digits of your answer."
      ]
    },
    {
      "id": "5900f5371000cf542c51004a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 459: Flipping game",
      "tests": [
        "assert.strictEqual(euler459(), 3996390106631, 'message: <code>euler459()</code> should return 3996390106631.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler459() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler459();"
      ],
      "description": [
        "The flipping game is a two player game played on a N by N square board.",
        "Each square contains a disk with one side white and one side black.",
        "The game starts with all disks showing their white side.",
        "",
        "A turn consists of flipping all disks in a rectangle with the following properties:",
        "the upper right corner of the rectangle contains a white disk",
        "the rectangle width is a perfect square (1, 4, 9, 16, ...)",
        "the rectangle height is a triangular number (1, 3, 6, 10, ...)",
        "",
        "",
        "Players alternate turns. A player wins by turning the grid all black.",
        "",
        "Let W(N) be the number of winning moves for the first player on a N by N board with all disks white, assuming perfect play.",
        "W(1) = 1, W(2) = 0, W(5) = 8 and W(102) = 31395.",
        "",
        "For N=5, the first player's eight winning first moves are:",
        "",
        "",
        "",
        "",
        "Find W(106)."
      ]
    },
    {
      "id": "5900f5381000cf542c51004b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 460: An ant on the move",
      "tests": [
        "assert.strictEqual(euler460(), 18.420738199, 'message: <code>euler460()</code> should return 18.420738199.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler460() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler460();"
      ],
      "description": [
        "On the Euclidean plane, an ant travels from point A(0, 1) to point B(d, 1) for an integer d.",
        "",
        "",
        "In each step, the ant at point (x0, y0) chooses one of the lattice points (x1, y1) which satisfy x1 ≥ 0 and y1 ≥ 1 and goes straight to (x1, y1) at a constant velocity v. The value of v depends on y0 and y1 as follows:",
        " If y0 = y1, the value of v equals y0.",
        " If y0 ≠ y1, the value of v equals (y1 - y0) / (ln(y1) - ln(y0)).",
        "",
        "The left image is one of the possible paths for d = 4. First the ant goes from A(0, 1) to P1(1, 3) at velocity (3 - 1) / (ln(3) - ln(1)) ≈ 1.8205. Then the required time is sqrt(5) / 1.8205 ≈ 1.2283.",
        "From P1(1, 3) to P2(3, 3) the ant travels at velocity 3 so the required time is 2 / 3 ≈ 0.6667. From P2(3, 3) to B(4, 1) the ant travels at velocity (1 - 3) / (ln(1) - ln(3)) ≈ 1.8205 so the required time is sqrt(5) / 1.8205 ≈ 1.2283.",
        "Thus the total required time is 1.2283 + 0.6667 + 1.2283 = 3.1233.",
        "",
        "",
        "The right image is another path. The total required time is calculated as 0.98026 + 1 + 0.98026 = 2.96052. It can be shown that this is the quickest path for d = 4.",
        "",
        "",
        "",
        "Let F(d) be the total required time if the ant chooses the quickest path. For example, F(4) ≈ 2.960516287.",
        "We can verify that F(10) ≈ 4.668187834 and F(100) ≈ 9.217221972.",
        "",
        "",
        "Find F(10000). Give your answer rounded to nine decimal places."
      ]
    },
    {
      "id": "5900f53a1000cf542c51004c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 461: Almost Pi",
      "tests": [
        "assert.strictEqual(euler461(), 159820276, 'message: <code>euler461()</code> should return 159820276.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler461() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler461();"
      ],
      "description": [
        "Let fn(k) = ek/n - 1, for all non-negative integers k.",
        "Remarkably, f200(6) + f200(75) + f200(89) + f200(226) = 3.141592644529… ≈ π.",
        "In fact, it is the best approximation of π of the form fn(a) + fn(b) + fn(c) + fn(d) for n = 200.",
        "Let g(n) = a2 + b2 + c2 + d 2 for a, b, c, d that minimize the error: | fn(a) + fn(b) + fn(c) + fn(d) - π|",
        "(where |x| denotes the absolute value of x).",
        "You are given g(200) = 62 + 752 + 892 + 2262 = 64658.",
        "Find g(10000)."
      ]
    },
    {
      "id": "5900f53b1000cf542c51004d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 462: Permutation of 3-smooth numbers",
      "tests": [
        "assert.strictEqual(euler462(), Infinity, 'message: <code>euler462()</code> should return Infinity.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler462() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler462();"
      ],
      "description": [
        "A 3-smooth number is an integer which has no prime factor larger than 3. For an integer N, we define S(N) as the set of 3-smooth numbers less than or equal to N . For example, S(20) = { 1, 2, 3, 4, 6, 8, 9, 12, 16, 18 }.",
        "",
        "",
        "We define F(N) as the number of permutations of S(N) in which each element comes after all of its proper divisors.",
        "",
        "",
        "This is one of the possible permutations for N = 20.",
        "- 1, 2, 4, 3, 9, 8, 16, 6, 18, 12.",
        "This is not a valid permutation because 12 comes before its divisor 6.",
        "- 1, 2, 4, 3, 9, 8, 12, 16, 6, 18.",
        "",
        "",
        "We can verify that F(6) = 5, F(8) = 9, F(20) = 450 and F(1000) ≈ 8.8521816557e21.",
        "Find F(1018). Give as your answer its scientific notation rounded to ten digits after the decimal point.",
        "When giving your answer, use a lowercase e to separate mantissa and exponent. E.g. if the answer is 112,233,445,566,778,899 then the answer format would be 1.1223344557e17."
      ]
    },
    {
      "id": "5900f53c1000cf542c51004e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 463: A weird recurrence relation",
      "tests": [
        "assert.strictEqual(euler463(), 808981553, 'message: <code>euler463()</code> should return 808981553.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler463() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler463();"
      ],
      "description": [
        "The function $f$ is defined for all positive integers as follows:",
        "$f(1)=1$",
        "$f(3)=3$",
        "$f(2n)=f(n)$",
        "$f(4n + 1)=2f(2n + 1) - f(n)$",
        "$f(4n + 3)=3f(2n + 1) - 2f(n)$",
        "",
        "The function $S(n)$ is defined as $\\sum_{i=1}^{n}f(i)$.",
        "$S(8)=22$ and $S(100)=3604$.",
        "Find $S(3^{37})$. Give the last 9 digits of your answer."
      ]
    },
    {
      "id": "5900f53d1000cf542c51004f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 464: Möbius function and intervals",
      "tests": [
        "assert.strictEqual(euler464(), 198775297232878, 'message: <code>euler464()</code> should return 198775297232878.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler464() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler464();"
      ],
      "description": [
        "The Möbius function, denoted μ(n), is defined as:",
        "μ(n) = (-1)ω(n) if n is squarefree (where ω(n) is the number of distinct prime factors of n)",
        "μ(n) = 0 if n is not squarefree.",
        "",
        "Let P(a,b) be the number of integers n in the interval [a,b] such that μ(n) = 1.",
        "Let N(a,b) be the number of integers n in the interval [a,b] such that μ(n) = -1.",
        "For example, P(2,10) = 2 and N(2,10) = 4.",
        "",
        "",
        "",
        "Let C(n) be the number of integer pairs (a,b) such that:",
        " 1 ≤ a ≤ b ≤ n,",
        " 99·N(a,b) ≤ 100·P(a,b), and",
        " 99·P(a,b) ≤ 100·N(a,b).",
        "",
        "For example, C(10) = 13, C(500) = 16676 and C(10 000) = 20155319.",
        "",
        "",
        "",
        "Find C(20 000 000)."
      ]
    },
    {
      "id": "5900f53d1000cf542c510050",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 465: Polar polygons",
      "tests": [
        "assert.strictEqual(euler465(), 585965659, 'message: <code>euler465()</code> should return 585965659.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler465() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler465();"
      ],
      "description": [
        "The kernel of a polygon is defined by the set of points from which the entire polygon's boundary is visible. We define a polar polygon as a polygon for which the origin is strictly contained inside its kernel.",
        "",
        "For this problem, a polygon can have collinear consecutive vertices. However, a polygon still cannot have self-intersection and cannot have zero area.",
        "",
        "For example, only the first of the following is a polar polygon (the kernels of the second, third, and fourth do not strictly contain the origin, and the fifth does not have a kernel at all):",
        "",
        "",
        "",
        "Notice that the first polygon has three consecutive collinear vertices.",
        "",
        "Let P(n) be the number of polar polygons such that the vertices (x, y) have integer coordinates whose absolute values are not greater than n.",
        "",
        "Note that polygons should be counted as different if they have different set of edges, even if they enclose the same area. For example, the polygon with vertices [(0,0),(0,3),(1,1),(3,0)] is distinct from the polygon with vertices [(0,0),(0,3),(1,1),(3,0),(1,0)].",
        "",
        "For example, P(1) = 131, P(2) = 1648531, P(3) = 1099461296175 and P(343) mod 1 000 000 007 = 937293740.",
        "",
        "Find P(713) mod 1 000 000 007."
      ]
    },
    {
      "id": "5900f53e1000cf542c510051",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 466: Distinct terms in a multiplication table",
      "tests": [
        "assert.strictEqual(euler466(), 258381958195474750, 'message: <code>euler466()</code> should return 258381958195474750.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler466() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler466();"
      ],
      "description": [
        "Let P(m,n) be the number of distinct terms in an m×n multiplication table.",
        "",
        "For example, a 3×4 multiplication table looks like this:",
        "",
        "× 12341 12342 24683 36912",
        "",
        "",
        "",
        "There are 8 distinct terms {1,2,3,4,6,8,9,12}, therefore P(3,4) = 8.",
        "",
        "You are given that:",
        "P(64,64) = 1263,",
        "P(12,345) = 1998, and",
        "P(32,1015) = 13826382602124302.",
        "",
        "Find P(64,1016)."
      ]
    },
    {
      "id": "5900f5411000cf542c510052",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 467: Superinteger",
      "tests": [
        "assert.strictEqual(euler467(), 775181359, 'message: <code>euler467()</code> should return 775181359.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler467() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler467();"
      ],
      "description": [
        "An integer s is called a superinteger of another integer n if the digits of n form a subsequence of the digits of s.",
        "For example, 2718281828 is a superinteger of 18828, while 314159 is not a superinteger of 151.",
        "",
        "",
        "Let p(n) be the nth prime number, and let c(n) be the nth composite number. For example, p(1) = 2, p(10) = 29, c(1) = 4 and c(10) = 18.",
        "{p(i) : i ≥ 1} = {2, 3, 5, 7, 11, 13, 17, 19, 23, 29, ...}",
        "{c(i) : i ≥ 1} = {4, 6, 8, 9, 10, 12, 14, 15, 16, 18, ...}",
        "",
        "Let PD the sequence of the digital roots of {p(i)} (CD is defined similarly for {c(i)}):",
        "PD = {2, 3, 5, 7, 2, 4, 8, 1, 5, 2, ...}",
        "CD = {4, 6, 8, 9, 1, 3, 5, 6, 7, 9, ...}",
        "",
        "Let Pn be the integer formed by concatenating the first n elements of PD (Cn is defined similarly for CD).",
        "P10 = 2357248152",
        "C10 = 4689135679",
        "",
        "Let f(n) be the smallest positive integer that is a common superinteger of Pn and Cn. For example, f(10) = 2357246891352679, and f(100) mod 1 000 000 007 = 771661825.",
        "",
        "Find f(10 000) mod 1 000 000 007."
      ]
    },
    {
      "id": "5900f5411000cf542c510054",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 468: Smooth divisors of binomial coefficients",
      "tests": [
        "assert.strictEqual(euler468(), 852950321, 'message: <code>euler468()</code> should return 852950321.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler468() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler468();"
      ],
      "description": [
        "An integer is called B-smooth if none of its prime factors is greater than B.",
        "",
        "Let SB(n) be the largest B-smooth divisor of n.",
        "Examples:",
        "S1(10) = 1",
        "S4(2100) = 12",
        "S17(2496144) = 5712",
        "",
        "Define F(n) = ∑1≤B≤n ∑0≤r≤n SB(C(n,r)). Here, C(n,r) denotes the binomial coefficient.",
        "Examples:",
        "F(11) = 3132",
        "F(1 111) mod 1 000 000 993 = 706036312",
        "F(111 111) mod 1 000 000 993 = 22156169",
        "",
        "Find F(11 111 111) mod 1 000 000 993."
      ]
    },
    {
      "id": "5900f5411000cf542c510053",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 469: Empty chairs",
      "tests": [
        "assert.strictEqual(euler469(), 0.56766764161831, 'message: <code>euler469()</code> should return 0.56766764161831.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler469() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler469();"
      ],
      "description": [
        "In a room N chairs are placed around a round table.",
        "Knights enter the room one by one and choose at random an available empty chair.",
        "To have enough elbow room the knights always leave at least one empty chair between each other.",
        "",
        "",
        "When there aren't any suitable chairs left, the fraction C of empty chairs is determined.",
        "We also define E(N) as the expected value of C.",
        "We can verify that E(4) = 1/2 and E(6) = 5/9.",
        "",
        "",
        "Find E(1018). Give your answer rounded to fourteen decimal places in the form 0.abcdefghijklmn."
      ]
    },
    {
      "id": "5900f5431000cf542c510055",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 470: Super Ramvok",
      "tests": [
        "assert.strictEqual(euler470(), 147668794, 'message: <code>euler470()</code> should return 147668794.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler470() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler470();"
      ],
      "description": [
        "Consider a single game of Ramvok:",
        "",
        "Let t represent the maximum number of turns the game lasts. If t = 0, then the game ends immediately. Otherwise, on each turn i, the player rolls a die. After rolling, if i < t the player can either stop the game and receive a prize equal to the value of the current roll, or discard the roll and try again next turn. If i = t, then the roll cannot be discarded and the prize must be accepted. Before the game begins, t is chosen by the player, who must then pay an up-front cost ct for some constant c. For c = 0, t can be chosen to be infinite (with an up-front cost of 0). Let R(d, c) be the expected profit (i.e. net gain) that the player receives from a single game of optimally-played Ramvok, given a fair d-sided die and cost constant c. For example, R(4, 0.2) = 2.65. Assume that the player has sufficient funds for paying any/all up-front costs.",
        "",
        "Now consider a game of Super Ramvok:",
        "",
        "In Super Ramvok, the game of Ramvok is played repeatedly, but with a slight modification. After each game, the die is altered. The alteration process is as follows: The die is rolled once, and if the resulting face has its pips visible, then that face is altered to be blank instead. If the face is already blank, then it is changed back to its original value. After the alteration is made, another game of Ramvok can begin (and during such a game, at each turn, the die is rolled until a face with a value on it appears). The player knows which faces are blank and which are not at all times. The game of Super Ramvok ends once all faces of the die are blank.",
        "",
        "Let S(d, c) be the expected profit that the player receives from an optimally-played game of Super Ramvok, given a fair d-sided die to start (with all sides visible), and cost constant c. For example, S(6, 1) = 208.3.",
        "",
        "Let F(n) = ∑4≤d≤n ∑0≤c≤n S(d, c).",
        "",
        "Calculate F(20), rounded to the nearest integer."
      ]
    },
    {
      "id": "5900f5431000cf542c510056",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 471: Triangle inscribed in ellipse",
      "tests": [
        "assert.strictEqual(euler471(), 1.895093981e+31, 'message: <code>euler471()</code> should return 1.895093981e+31.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler471() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler471();"
      ],
      "description": [
        "The triangle ΔABC is inscribed in an ellipse with equation $\\frac {x^2} {a^2} + \\frac {y^2} {b^2} = 1$, 0 < 2b < a, a and b integers.",
        "Let r(a,b) be the radius of the incircle of ΔABC when the incircle has center (2b, 0) and A has coordinates $\\left( \\frac a 2, \\frac {\\sqrt 3} 2 b\\right)$.",
        "For example, r(3,1) = ½, r(6,2) = 1, r(12,3) = 2.",
        "",
        "",
        "Let $G(n) = \\sum_{a=3}^n \\sum_{b=1}^{\\lfloor \\frac {a - 1} 2 \\rfloor} r(a, b)$",
        "You are given G(10) = 20.59722222, G(100) = 19223.60980 (rounded to 10 significant digits).",
        "Find G(1011).",
        "Give your answer in scientific notation rounded to 10 significant digits. Use a lowercase e to separate mantissa and exponent.",
        "For G(10) the answer would have been 2.059722222e1."
      ]
    },
    {
      "id": "5900f5451000cf542c510057",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 472: Comfortable Distance II",
      "tests": [
        "assert.strictEqual(euler472(), 73811586, 'message: <code>euler472()</code> should return 73811586.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler472() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler472();"
      ],
      "description": [
        "There are N seats in a row. N people come one after another to fill the seats according to the following rules:",
        "No person sits beside another.",
        "The first person chooses any seat.",
        "Each subsequent person chooses the seat furthest from anyone else already seated, as long as it does not violate rule 1. If there is more than one choice satisfying this condition, then the person chooses the leftmost choice.",
        "Note that due to rule 1, some seats will surely be left unoccupied, and the maximum number of people that can be seated is less than N (for N > 1).",
        "",
        "Here are the possible seating arrangements for N = 15:",
        "",
        "",
        "",
        "We see that if the first person chooses correctly, the 15 seats can seat up to 7 people.",
        "We can also see that the first person has 9 choices to maximize the number of people that may be seated.",
        "",
        "Let f(N) be the number of choices the first person has to maximize the number of occupants for N seats in a row. Thus, f(1) = 1, f(15) = 9, f(20) = 6, and f(500) = 16.",
        "",
        "Also, ∑f(N) = 83 for 1 ≤ N ≤ 20 and  ∑f(N) = 13343 for 1 ≤ N ≤ 500.",
        "",
        "Find ∑f(N) for 1 ≤ N ≤ 1012. Give the last 8 digits of your answer."
      ]
    },
    {
      "id": "5900f5461000cf542c510058",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 473: Phigital number base",
      "tests": [
        "assert.strictEqual(euler473(), 35856681704365, 'message: <code>euler473()</code> should return 35856681704365.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler473() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler473();"
      ],
      "description": [
        "Let $\\varphi$ be the golden ratio: $\\varphi=\\frac{1+\\sqrt{5}}{2}.$",
        "Remarkably it is possible to write every positive integer as a sum of powers of $\\varphi$ even if we require that every power of $\\varphi$ is used at most once in this sum.",
        "Even then this representation is not unique.",
        "We can make it unique by requiring that no powers with consecutive exponents are used and that the representation is finite.",
        "E.g: ",
        "$2=\\varphi+\\varphi^{-2}$ and $3=\\varphi^{2}+\\varphi^{-2}$",
        "",
        "",
        "To represent this sum of powers of $\\varphi$ we use a string of 0's and 1's with a point to indicate where the negative exponents start.",
        "We call this the representation in the phigital numberbase.",
        "So $1=1_{\\varphi}$, $2=10.01_{\\varphi}$, $3=100.01_{\\varphi}$ and $14=100100.001001_{\\varphi}$. ",
        "The strings representing 1, 2 and 14 in the phigital number base are palindromic, while the string representing 3 is not. (the phigital point is not the middle character).",
        "",
        "",
        "The sum of the positive integers not exceeding 1000 whose phigital representation is palindromic is 4345.",
        "",
        "",
        "Find the sum of the positive integers not exceeding $10^{10}$ whose phigital representation is palindromic."
      ]
    },
    {
      "id": "5900f5471000cf542c510059",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 474: Last digits of divisors",
      "tests": [
        "assert.strictEqual(euler474(), 9690646731515010, 'message: <code>euler474()</code> should return 9690646731515010.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler474() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler474();"
      ],
      "description": [
        "For a positive integer n and digits d, we define F(n, d) as the number of the divisors of n whose last digits equal d.",
        "For example, F(84, 4) = 3. Among the divisors of 84 (1, 2, 3, 4, 6, 7, 12, 14, 21, 28, 42, 84), three of them (4, 14, 84) have the last digit 4.",
        "",
        "",
        "We can also verify that F(12!, 12) = 11 and F(50!, 123) = 17888.",
        "",
        "",
        "Find F(106!, 65432) modulo (1016 + 61)."
      ]
    },
    {
      "id": "5900f5481000cf542c51005a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 475: Music festival",
      "tests": [
        "assert.strictEqual(euler475(), 75780067, 'message: <code>euler475()</code> should return 75780067.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler475() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler475();"
      ],
      "description": [
        "12n musicians participate at a music festival. On the first day, they form 3n quartets and practice all day.",
        "It is a disaster. At the end of the day, all musicians decide they will never again agree to play with any member of their quartet.",
        "On the second day, they form 4n trios, each musician avoiding his previous quartet partners.",
        "",
        "Let f(12n) be the number of ways to organize the trios amongst the 12n musicians.",
        "You are given f(12) = 576 and f(24) mod 1 000 000 007 = 509089824.",
        "",
        "Find f(600) mod 1 000 000 007."
      ]
    },
    {
      "id": "5900f5481000cf542c51005b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 476: Circle Packing II",
      "tests": [
        "assert.strictEqual(euler476(), 110242.87794, 'message: <code>euler476()</code> should return 110242.87794.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler476() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler476();"
      ],
      "description": [
        "Let R(a, b, c) be the maximum area covered by three non-overlapping circles inside a triangle with edge lengths a, b and c.",
        "Let S(n) be the average value of R(a, b, c) over all integer triplets (a, b, c) such that 1 ≤ a ≤ b ≤ c < a + b ≤ n",
        "You are given S(2) = R(1, 1, 1) ≈ 0.31998, S(5) ≈ 1.25899.",
        "Find S(1803) rounded to 5 decimal places behind the decimal point."
      ]
    },
    {
      "id": "5900f54a1000cf542c51005c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 477: Number Sequence Game",
      "tests": [
        "assert.strictEqual(euler477(), 25044905874565164, 'message: <code>euler477()</code> should return 25044905874565164.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler477() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler477();"
      ],
      "description": [
        "The number sequence game starts with a sequence S of N numbers written on a line.",
        "Two players alternate turns. At his turn, a player must select and remove either the first or the last number remaining in the sequence.",
        "The player score is the sum of all the numbers he has taken. Each player attempts to maximize his own sum.",
        "If N = 4 and S = {1, 2, 10, 3}, then each player maximizes his score as follows:",
        "Player 1: removes the first number (1)",
        "Player 2: removes the last number from the remaining sequence (3)",
        "Player 1: removes the last number from the remaining sequence (10)",
        "Player 2: removes the remaining number (2)",
        "Player 1 score is 1 + 10 = 11.",
        "Let F(N) be the score of player 1 if both players follow the optimal strategy for the sequence S = {s1, s2, ..., sN} defined as:",
        "s1 = 0",
        "si+1 = (si2 + 45) modulo 1 000 000 007",
        "The sequence begins with S = {0, 45, 2070, 4284945, 753524550, 478107844, 894218625, ...}.",
        "You are given F(2) = 45, F(4) = 4284990, F(100) = 26365463243, F(104) = 2495838522951.",
        "Find F(108)."
      ]
    },
    {
      "id": "5900f54c1000cf542c51005e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 478: Mixtures",
      "tests": [
        "assert.strictEqual(euler478(), 59510340, 'message: <code>euler478()</code> should return 59510340.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler478() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler478();"
      ],
      "description": [
        "Let us consider mixtures of three substances: A, B and C. A mixture can be described by a ratio of the amounts of A, B, and C in it, i.e., (a : b : c). For example, a mixture described by the ratio (2 : 3 : 5) contains 20% A, 30% B and 50% C.",
        "",
        "For the purposes of this problem, we cannot separate the individual components from a mixture. However, we can combine different amounts of different mixtures to form mixtures with new ratios.",
        "",
        "For example, say we have three mixtures with ratios (3 : 0 : 2), (3 : 6 : 11) and (3 : 3 : 4). By mixing 10 units of the first, 20 units of the second and 30 units of the third, we get a new mixture with ratio (6 : 5 : 9), since:",
        "(10·3/5 + 20·3/20 + 30·3/10 : 10·0/5 + 20·6/20 + 30·3/10 : 10·2/5 + 20·11/20 + 30·4/10)",
        "= (18 : 15 : 27) = (6 : 5 : 9)",
        "",
        "However, with the same three mixtures, it is impossible to form the ratio (3 : 2 : 1), since the amount of B is always less than the amount of C.",
        "",
        "Let n be a positive integer. Suppose that for every triple of integers (a, b, c) with 0 ≤ a, b, c ≤ n and gcd(a, b, c) = 1, we have a mixture with ratio (a : b : c). Let M(n) be the set of all such mixtures.",
        "",
        "For example, M(2) contains the 19 mixtures with the following ratios:",
        "{(0 : 0 : 1), (0 : 1 : 0), (0 : 1 : 1), (0 : 1 : 2), (0 : 2 : 1), ",
        "(1 : 0 : 0), (1 : 0 : 1), (1 : 0 : 2), (1 : 1 : 0), (1 : 1 : 1), ",
        "(1 : 1 : 2), (1 : 2 : 0), (1 : 2 : 1), (1 : 2 : 2), (2 : 0 : 1), ",
        "(2 : 1 : 0), (2 : 1 : 1), (2 : 1 : 2), (2 : 2 : 1)}.",
        "",
        "Let E(n) be the number of subsets of M(n) which can produce the mixture with ratio (1 : 1 : 1), i.e., the mixture with equal parts A, B and C. ",
        "We can verify that E(1) = 103, E(2) = 520447, E(10) mod 118 = 82608406 and E(500) mod 118 = 13801403.",
        "Find E(10 000 000) mod 118."
      ]
    },
    {
      "id": "5900f54b1000cf542c51005d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 479: Roots on the Rise",
      "tests": [
        "assert.strictEqual(euler479(), 191541795, 'message: <code>euler479()</code> should return 191541795.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler479() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler479();"
      ],
      "description": [
        "Let ak, bk, and ck represent the three solutions (real or complex numbers) to the expression 1/x = (k/x)2(k+x2) - kx.",
        "",
        "For instance, for k = 5, we see that {a5, b5, c5} is approximately {5.727244, -0.363622+2.057397i, -0.363622-2.057397i}.",
        "",
        "Let S(n) = Σ (ak+bk)p(bk+ck)p(ck+ak)p for all integers p, k such that 1 ≤ p, k ≤ n. ",
        "",
        "Interestingly, S(n) is always an integer. For example, S(4) = 51160.",
        "",
        "Find S(106) modulo 1 000 000 007."
      ]
    },
    {
      "id": "5900f54c1000cf542c51005f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 480: The Last Question",
      "tests": [
        "assert.strictEqual(euler480(), turnthestarson, 'message: <code>euler480()</code> should return turnthestarson.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler480() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler480();"
      ],
      "description": [
        "Consider all the words which can be formed by selecting letters, in any order, from the phrase:",
        "thereisasyetinsufficientdataforameaningfulanswer",
        "Suppose those with 15 letters or less are listed in alphabetical order and numbered sequentially starting at 1.",
        "The list would include:",
        "1 : a",
        "2 : aa",
        "3 : aaa",
        "4 : aaaa",
        "5 : aaaaa",
        "6 : aaaaaa",
        "7 : aaaaaac",
        "8 : aaaaaacd",
        "9 : aaaaaacde",
        "10 : aaaaaacdee",
        "11 : aaaaaacdeee",
        "12 : aaaaaacdeeee",
        "13 : aaaaaacdeeeee",
        "14 : aaaaaacdeeeeee",
        "15 : aaaaaacdeeeeeef",
        "16 : aaaaaacdeeeeeeg",
        "17 : aaaaaacdeeeeeeh",
        "...",
        "28 : aaaaaacdeeeeeey",
        "29 : aaaaaacdeeeeef",
        "30 : aaaaaacdeeeeefe",
        "...",
        "115246685191495242: euleoywuttttsss",
        "115246685191495243: euler",
        "115246685191495244: eulera",
        "...",
        "525069350231428029: ywuuttttssssrrrDefine P(w) as the position of the word w.",
        "Define W(p) as the word in position p.",
        "We can see that P(w) and W(p) are inverses: P(W(p)) = p and W(P(w)) = w.",
        "Examples:",
        "W(10) = aaaaaacdee",
        "P(aaaaaacdee) = 10",
        "W(115246685191495243) = euler",
        "P(euler) = 115246685191495243Find W(P(legionary) + P(calorimeters) - P(annihilate) + P(orchestrated) - P(fluttering)).",
        "Give your answer using lowercase characters (no punctuation or space)."
      ]
    },
    {
      "id": "5900f54d1000cf542c510060",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 481: Chef Showdown",
      "tests": [
        "assert.strictEqual(euler481(), TODO: MISSING ANSWER, 'message: <code>euler481()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler481() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler481();"
      ],
      "description": [
        "A group of chefs (numbered #1, #2, etc) participate in a turn-based strategic cooking competition. On each chef's turn, he/she cooks up a dish to the best of his/her ability and gives it to a separate panel of judges for taste-testing. Let S(k) represent chef #k's skill level (which is publicly known). More specifically, S(k) is the probability that chef #k's dish will be assessed favorably by the judges (on any/all turns). If the dish receives a favorable rating, then the chef must choose one other chef to be eliminated from the competition. The last chef remaining in the competition is the winner.",
        "",
        "The game always begins with chef #1, with the turn order iterating sequentially over the rest of the chefs still in play. Then the cycle repeats from the lowest-numbered chef. All chefs aim to optimize their chances of winning within the rules as stated, assuming that the other chefs behave in the same manner. In the event that a chef has more than one equally-optimal elimination choice, assume that the chosen chef is always the one with the next-closest turn.",
        "",
        "Define Wn(k) as the probability that chef #k wins in a competition with n chefs. If we have S(1) = 0.25, S(2) = 0.5, and S(3) = 1, then W3(1) = 0.29375.",
        "",
        "Going forward, we assign S(k) = Fk/Fn+1 over all 1 ≤ k ≤ n, where Fk is a Fibonacci number: Fk = Fk-1 + Fk-2 with base cases F1 = F2 = 1. Then, for example, when considering a competition with n = 7 chefs, we have W7(1) = 0.08965042, W7(2) = 0.20775702, W7(3) = 0.15291406, W7(4) = 0.14554098, W7(5) = 0.15905291, W7(6) = 0.10261412, and W7(7) = 0.14247050, rounded to 8 decimal places each.",
        "",
        "Let E(n) represent the expected number of dishes cooked in a competition with n chefs. For instance, E(7) = 42.28176050.",
        "",
        "Find E(14) rounded to 8 decimal places."
      ]
    },
    {
      "id": "5900f54f1000cf542c510061",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 482: The incenter of a triangle",
      "tests": [
        "assert.strictEqual(euler482(), TODO: MISSING ANSWER, 'message: <code>euler482()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler482() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler482();"
      ],
      "description": [
        "ABC is an integer sided triangle with incenter I and perimeter p.",
        "The segments IA, IB and IC have integral length as well. ",
        "",
        "",
        "Let L = p + |IA| + |IB| + |IC|. ",
        "",
        "",
        "Let S(P) = ∑L for all such triangles where p ≤ P. For example, S(103) = 3619.",
        "",
        "",
        "Find S(107)."
      ]
    },
    {
      "id": "5900f54f1000cf542c510062",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 483: Repeated permutation",
      "tests": [
        "assert.strictEqual(euler483(), TODO: MISSING ANSWER, 'message: <code>euler483()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler483() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler483();"
      ],
      "description": [
        "We define a permutation as an operation that rearranges the order of the elements {1, 2, 3, ..., n}.",
        "There are n! such permutations, one of which leaves the elements in their initial order.",
        "For n = 3 we have 3! = 6 permutations:",
        "- P1 = keep the initial order",
        "- P2 = exchange the 1st and 2nd elements",
        "- P3 = exchange the 1st and 3rd elements",
        "- P4 = exchange the 2nd and 3rd elements",
        "- P5 = rotate the elements to the right",
        "- P6 = rotate the elements to the left",
        "",
        "",
        "If we select one of these permutations, and we re-apply the same permutation repeatedly, we eventually restore the initial order.For a permutation Pi, let f(Pi) be the number of steps required to restore the initial order by applying the permutation Pi repeatedly.For n = 3, we obtain:- f(P1) = 1 : (1,2,3) → (1,2,3)- f(P2) = 2 : (1,2,3) → (2,1,3) → (1,2,3)- f(P3) = 2 : (1,2,3) → (3,2,1) → (1,2,3)- f(P4) = 2 : (1,2,3) → (1,3,2) → (1,2,3)- f(P5) = 3 : (1,2,3) → (3,1,2) → (2,3,1) → (1,2,3)- f(P6) = 3 : (1,2,3) → (2,3,1) → (3,1,2) → (1,2,3)",
        "",
        "",
        "Let g(n) be the average value of f2(Pi) over all permutations Pi of length n.g(3) = (12 + 22 + 22 + 22 + 32 + 32)/3! = 31/6 ≈ 5.166666667e0g(5) = 2081/120 ≈ 1.734166667e1g(20) = 12422728886023769167301/2432902008176640000 ≈ 5.106136147e3",
        "",
        "",
        "Find g(350) and write the answer in scientific notation rounded to 10 significant digits, using a lowercase e to separate mantissa and exponent, as in the examples above."
      ]
    },
    {
      "id": "5900f5501000cf542c510063",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 484: Arithmetic Derivative",
      "tests": [
        "assert.strictEqual(euler484(), TODO: MISSING ANSWER, 'message: <code>euler484()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler484() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler484();"
      ],
      "description": [
        "The arithmetic derivative is defined by",
        "p' = 1 for any prime p",
        "(ab)' = a'b + ab' for all integers a, b (Leibniz rule)",
        "For example, 20' = 24",
        "",
        "Find ∑ gcd(k,k') for 1 < k ≤ 5·1015",
        "",
        "Note: gcd(x,y) denotes the greatest common divisor of x and y."
      ]
    },
    {
      "id": "5900f5511000cf542c510064",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 485: Maximum number of divisors",
      "tests": [
        "assert.strictEqual(euler485(), 51281274340, 'message: <code>euler485()</code> should return 51281274340.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler485() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler485();"
      ],
      "description": [
        "Let d(n) be the number of divisors of n.",
        "Let M(n,k) be the maximum value of d(j) for n ≤ j ≤ n+k-1.",
        "Let S(u,k) be the sum of M(n,k) for 1 ≤ n ≤ u-k+1.",
        "",
        "",
        "You are given that S(1000,10)=17176.",
        "",
        "",
        "Find S(100 000 000,100 000)."
      ]
    },
    {
      "id": "5900f5531000cf542c510065",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 486: Palindrome-containing strings",
      "tests": [
        "assert.strictEqual(euler486(), 11408450515, 'message: <code>euler486()</code> should return 11408450515.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler486() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler486();"
      ],
      "description": [
        "Let F5(n) be the number of strings s such that:",
        "s consists only of '0's and '1's,",
        "s has length at most n, and",
        "s contains a palindromic substring of length at least 5.",
        "For example, F5(4) = 0, F5(5) = 8, ",
        "F5(6) = 42 and F5(11) = 3844.",
        "",
        "Let D(L) be the number of integers n such that ",
        "5 ≤ n ≤ L and F5(n) is divisible by 87654321.",
        "",
        "For example, D(107) = 0 and D(5·109) = 51.",
        "",
        "Find D(1018)."
      ]
    },
    {
      "id": "5900f5531000cf542c510066",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 487: Sums of power sums",
      "tests": [
        "assert.strictEqual(euler487(), 106650212746, 'message: <code>euler487()</code> should return 106650212746.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler487() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler487();"
      ],
      "description": [
        "Let fk(n) be the sum of the kth powers of the first n positive integers.",
        "",
        "For example, f2(10) = 12 + 22 + 32 + 42 + 52 + 62 + 72 + 82 + 92 + 102 = 385.",
        "",
        "Let Sk(n) be the sum of fk(i) for 1 ≤ i ≤ n. For example, S4(100) = 35375333830.",
        "",
        "What is ∑ (S10000(1012) mod p) over all primes p between 2 ⋅ 109 and 2 ⋅ 109 + 2000?"
      ]
    },
    {
      "id": "5900f5541000cf542c510067",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 488: Unbalanced Nim",
      "tests": [
        "assert.strictEqual(euler488(), TODO: MISSING ANSWER, 'message: <code>euler488()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler488() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler488();"
      ],
      "description": [
        "Alice and Bob have enjoyed playing Nim every day. However, they finally got bored of playing ordinary three-heap Nim.",
        "So, they added an extra rule:",
        "",
        "- Must not make two heaps of the same size.",
        "",
        "The triple (a,b,c) indicates the size of three heaps.",
        "Under this extra rule, (2,4,5) is one of the losing positions for the next player.",
        "",
        "To illustrate:",
        "- Alice moves to (2,4,3)",
        "- Bob   moves to (0,4,3)",
        "- Alice moves to (0,2,3)",
        "- Bob   moves to (0,2,1)",
        "",
        "Unlike ordinary three-heap Nim, (0,1,2) and its permutations are the end states of this game.",
        "",
        "For an integer N, we define F(N) as the sum of a+b+c for all the losing positions for the next player, with 0 < a < b < c < N.",
        "",
        "For example, F(8) = 42, because there are 4 losing positions for the next player, (1,3,5), (1,4,6), (2,3,6) and (2,4,5).",
        "We can also verify that F(128) = 496062.",
        "",
        "Find the last 9 digits of F(1018)."
      ]
    },
    {
      "id": "5900f5561000cf542c510068",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 489: Common factors between two sequences",
      "tests": [
        "assert.strictEqual(euler489(), TODO: MISSING ANSWER, 'message: <code>euler489()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler489() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler489();"
      ],
      "description": [
        "Let G(a, b) be the smallest non-negative integer n for which gcd(n3 + b, (n + a)3 + b) is maximized.",
        "For example, G(1, 1) = 5 because gcd(n3 + 1, (n + 1)3 + 1) reaches its maximum value of 7 for n = 5, and is smaller for 0 ≤ n < 5.",
        "Let H(m, n) = Σ G(a, b) for 1 ≤ a ≤ m, 1 ≤ b ≤ n.",
        "You are given H(5, 5) = 128878 and H(10, 10) = 32936544.",
        "Find H(18, 1900)."
      ]
    },
    {
      "id": "5900f5561000cf542c510069",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 490: Jumping frog",
      "tests": [
        "assert.strictEqual(euler490(), TODO: MISSING ANSWER, 'message: <code>euler490()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler490() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler490();"
      ],
      "description": [
        "There are n stones in a pond, numbered 1 to n. Consecutive stones are spaced one unit apart.",
        "",
        "A frog sits on stone 1. He wishes to visit each stone exactly once, stopping on stone n. However, he can only jump from one stone to another if they are at most 3 units apart. In other words, from stone i, he can reach a stone j if 1 ≤ j ≤ n and j is in the set {i-3, i-2, i-1, i+1, i+2, i+3}.",
        "",
        "Let f(n) be the number of ways he can do this. For example, f(6) = 14, as shown below:",
        "1 → 2 → 3 → 4 → 5 → 6 ",
        "1 → 2 → 3 → 5 → 4 → 6 ",
        "1 → 2 → 4 → 3 → 5 → 6 ",
        "1 → 2 → 4 → 5 → 3 → 6 ",
        "1 → 2 → 5 → 3 → 4 → 6 ",
        "1 → 2 → 5 → 4 → 3 → 6 ",
        "1 → 3 → 2 → 4 → 5 → 6 ",
        "1 → 3 → 2 → 5 → 4 → 6 ",
        "1 → 3 → 4 → 2 → 5 → 6 ",
        "1 → 3 → 5 → 2 → 4 → 6 ",
        "1 → 4 → 2 → 3 → 5 → 6 ",
        "1 → 4 → 2 → 5 → 3 → 6 ",
        "1 → 4 → 3 → 2 → 5 → 6 ",
        "1 → 4 → 5 → 2 → 3 → 6",
        "",
        "Other examples are f(10) = 254 and f(40) = 1439682432976.",
        "",
        "Let S(L) = ∑ f(n)3 for 1 ≤ n ≤ L.",
        "Examples:",
        "S(10) = 18230635",
        "S(20) = 104207881192114219",
        "S(1 000) mod 109 = 225031475",
        "S(1 000 000) mod 109 = 363486179",
        "",
        "Find S(1014) mod 109."
      ]
    },
    {
      "id": "5900f5591000cf542c51006b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 491: Double pandigital number divisible by 11",
      "tests": [
        "assert.strictEqual(euler491(), 194505988824000, 'message: <code>euler491()</code> should return 194505988824000.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler491() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler491();"
      ],
      "description": [
        "We call a positive integer double pandigital if it uses all the digits 0 to 9 exactly twice (with no leading zero). For example, 40561817703823564929 is one such number.",
        "",
        "How many double pandigital numbers are divisible by 11?"
      ]
    },
    {
      "id": "5900f5581000cf542c51006a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 492: Exploding sequence",
      "tests": [
        "assert.strictEqual(euler492(), TODO: MISSING ANSWER, 'message: <code>euler492()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler492() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler492();"
      ],
      "description": [
        "Define the sequence a1, a2, a3, ... as:",
        "a1 = 1",
        "an+1 = 6an2 + 10an + 3 for n ≥ 1.",
        "",
        "Examples:",
        "a3 = 2359",
        "a6 = 269221280981320216750489044576319",
        "a6 mod 1 000 000 007 = 203064689",
        "a100 mod 1 000 000 007 = 456482974",
        "",
        "",
        "",
        "Define B(x,y,n) as ∑ (an mod p) for every prime p such that x ≤ p ≤ x+y.",
        "",
        "",
        "",
        "Examples:",
        "B(109, 103, 103) = 23674718882",
        "B(109, 103, 1015) = 20731563854",
        "",
        "",
        "Find B(109, 107, 1015)."
      ]
    },
    {
      "id": "5900f55a1000cf542c51006c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 493: Under The Rainbow",
      "tests": [
        "assert.strictEqual(euler493(), 6.818741802, 'message: <code>euler493()</code> should return 6.818741802.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler493() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler493();"
      ],
      "description": [
        "70 colored balls are placed in an urn, 10 for each of the seven rainbow colors.",
        "What is the expected number of distinct colors in 20 randomly picked balls?",
        "Give your answer with nine digits after the decimal point (a.bcdefghij)."
      ]
    },
    {
      "id": "5900f55a1000cf542c51006d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 494: Collatz prefix families",
      "tests": [
        "assert.strictEqual(euler494(), TODO: MISSING ANSWER, 'message: <code>euler494()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler494() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler494();"
      ],
      "description": [
        "The Collatz sequence is defined as:",
        "$a_{i+1} = \\left\\{  \\large{\\frac {a_i} 2 \\atop 3 a_i+1} {\\text{if }a_i\\text{ is even} \\atop \\text{if }a_i\\text{ is odd}} \\right.$.",
        "",
        "",
        "The Collatz conjecture states that starting from any positive integer, the sequence eventually reaches the cycle 1,4,2,1....",
        "We shall define the sequence prefix p(n) for the Collatz sequence starting with a1 = n as the sub-sequence of all numbers not a power of 2 (20=1 is considered a power of 2 for this problem). For example:p(13) = {13, 40, 20, 10, 5} p(8) = {}",
        "Any number invalidating the conjecture would have an infinite length sequence prefix.",
        "",
        "",
        "Let Sm be the set of all sequence prefixes of length m. Two sequences {a1, a2, ..., am} and {b1, b2, ..., bm} in Sm are said to belong to the same prefix family if ai < aj if and only if bi < bj for all 1 ≤ i,j ≤ m.",
        "",
        "",
        "For example, in S4, {6, 3, 10, 5} is in the same family as {454, 227, 682, 341}, but not {113, 340, 170, 85}.",
        "Let f(m) be the number of distinct prefix families in Sm.",
        "You are given f(5) = 5, f(10) = 55, f(20) = 6771.",
        "",
        "",
        "Find f(90)."
      ]
    },
    {
      "id": "5900f55b1000cf542c51006e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 495: Writing n as the product of k distinct positive integers",
      "tests": [
        "assert.strictEqual(euler495(), TODO: MISSING ANSWER, 'message: <code>euler495()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler495() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler495();"
      ],
      "description": [
        "Let W(n,k) be the number of ways in which n can be written as the product of k distinct positive integers.",
        "For example, W(144,4) = 7. There are 7 ways in which 144 can be written as a product of 4 distinct positive integers:",
        "144 = 1×2×4×18",
        "144 = 1×2×8×9",
        "144 = 1×2×3×24",
        "144 = 1×2×6×12",
        "144 = 1×3×4×12",
        "144 = 1×3×6×8",
        "144 = 2×3×4×6",
        "Note that permutations of the integers themselves are not considered distinct.",
        "Furthermore, W(100!,10) modulo 1 000 000 007 = 287549200.",
        "Find W(10000!,30) modulo 1 000 000 007."
      ]
    },
    {
      "id": "5900f55d1000cf542c51006f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 496: Incenter and circumcenter of triangle",
      "tests": [
        "assert.strictEqual(euler496(), 2042473533769142800, 'message: <code>euler496()</code> should return 2042473533769142800.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler496() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler496();"
      ],
      "description": [
        "Given an integer sided triangle ABC:",
        "Let I be the incenter of ABC.",
        "Let D be the intersection between the line AI and the circumcircle of ABC (A ≠ D).",
        "",
        "We define F(L) as the sum of BC for the triangles ABC that satisfy AC = DI and BC ≤ L.",
        "",
        "For example, F(15) = 45 because the triangles ABC with (BC,AC,AB) = (6,4,5), (12,8,10), (12,9,7), (15,9,16) satisfy the conditions.",
        "",
        "Find F(109)."
      ]
    },
    {
      "id": "5900f55f1000cf542c510070",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 497: Drunken Tower of Hanoi",
      "tests": [
        "assert.strictEqual(euler497(), 684901360, 'message: <code>euler497()</code> should return 684901360.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler497() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler497();"
      ],
      "description": [
        "Bob is very familiar with the famous mathematical puzzle/game, \"Tower of Hanoi,\" which consists of three upright rods and disks of different sizes that can slide onto any of the rods. The game begins with a stack of n disks placed on the leftmost rod in descending order by size. The objective of the game is to move all of the disks from the leftmost rod to the rightmost rod, given the following restrictions:",
        "",
        "Only one disk can be moved at a time.",
        "A valid move consists of taking the top disk from one stack and placing it onto another stack (or an empty rod).",
        "No disk can be placed on top of a smaller disk.",
        "Moving on to a variant of this game, consider a long room k units (square tiles) wide, labeled from 1 to k in ascending order. Three rods are placed at squares a, b, and c, and a stack of n disks is placed on the rod at square a.",
        "",
        "Bob begins the game standing at square b. His objective is to play the Tower of Hanoi game by moving all of the disks to the rod at square c. However, Bob can only pick up or set down a disk if he is on the same square as the rod / stack in question.",
        "",
        "Unfortunately, Bob is also drunk. On a given move, Bob will either stumble one square to the left or one square to the right with equal probability, unless Bob is at either end of the room, in which case he can only move in one direction. Despite Bob's inebriated state, he is still capable of following the rules of the game itself, as well as choosing when to pick up or put down a disk.",
        "",
        "The following animation depicts a side-view of a sample game for n = 3, k = 7, a = 2, b = 4, and c = 6:",
        "",
        "",
        "",
        "Let E(n,k,a,b,c) be the expected number of squares that Bob travels during a single optimally-played game. A game is played optimally if the number of disk-pickups is minimized.",
        "",
        "Interestingly enough, the result is always an integer. For example, E(2,5,1,3,5) = 60 and E(3,20,4,9,17) = 2358.",
        "",
        "Find the last nine digits of ∑1≤n≤10000 E(n,10n,3n,6n,9n)."
      ]
    },
    {
      "id": "5900f55f1000cf542c510071",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 498: Remainder of polynomial division",
      "tests": [
        "assert.strictEqual(euler498(), 472294837, 'message: <code>euler498()</code> should return 472294837.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler498() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler498();"
      ],
      "description": [
        "For positive integers n and m, we define two polynomials Fn(x) = xn and Gm(x) = (x-1)m.",
        "We also define a polynomial Rn,m(x) as the remainder of the division of Fn(x) by Gm(x).",
        "For example, R6,3(x) = 15x2 - 24x + 10.",
        "",
        "Let C(n, m, d) be the absolute value of the coefficient of the d-th degree term of Rn,m(x).",
        "We can verify that C(6, 3, 1) = 24 and C(100, 10, 4) = 227197811615775.",
        "",
        "Find C(1013, 1012, 104) mod 999999937."
      ]
    },
    {
      "id": "5900f5611000cf542c510072",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 499: St. Petersburg Lottery",
      "tests": [
        "assert.strictEqual(euler499(), 0.8660312, 'message: <code>euler499()</code> should return 0.8660312.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler499() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler499();"
      ],
      "description": [
        "A gambler decides to participate in a special lottery. In this lottery the gambler plays a series of one or more games.",
        "Each game costs m pounds to play and starts with an initial pot of 1 pound. The gambler flips an unbiased coin. Every time a head appears, the pot is doubled and the gambler continues. When a tail appears, the game ends and the gambler collects the current value of the pot. The gambler is certain to win at least 1 pound, the starting value of the pot, at the cost of m pounds, the initial fee.",
        "",
        "The gambler cannot continue to play if his fortune falls below m pounds.",
        "Let pm(s) denote the probability that the gambler will never run out of money in this lottery given his initial fortune s and the cost per game m.",
        "For example p2(2) ≈ 0.2522, p2(5) ≈ 0.6873 and p6(10 000) ≈ 0.9952 (note: pm(s) = 0 for s < m).",
        "",
        "Find p15(109) and give your answer rounded to 7 decimal places behind the decimal point in the form 0.abcdefg."
      ]
    },
    {
      "id": "5900f5611000cf542c510073",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 500: Problem 500!!!",
      "tests": [
        "assert.strictEqual(euler500(), 35407281, 'message: <code>euler500()</code> should return 35407281.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler500() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler500();"
      ],
      "description": [
        "The number of divisors of 120 is 16.",
        "In fact 120 is the smallest number having 16 divisors.",
        "",
        "",
        "Find the smallest number with 2500500 divisors.",
        "Give your answer modulo 500500507."
      ]
    },
    {
      "id": "5900f5621000cf542c510074",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 501: Eight Divisors",
      "tests": [
        "assert.strictEqual(euler501(), 197912312715, 'message: <code>euler501()</code> should return 197912312715.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler501() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler501();"
      ],
      "description": [
        "The eight divisors of 24 are 1, 2, 3, 4, 6, 8, 12 and 24.",
        "The ten numbers not exceeding 100 having exactly eight divisors are 24, 30, 40, 42, 54, 56, 66, 70, 78 and 88.",
        "Let f(n) be the count of numbers not exceeding n with exactly eight divisors.",
        "You are given f(100) = 10, f(1000) = 180 and f(106) = 224427.",
        "Find f(1012)."
      ]
    },
    {
      "id": "5900f5621000cf542c510075",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 502: Counting Castles",
      "tests": [
        "assert.strictEqual(euler502(), TODO: MISSING ANSWER, 'message: <code>euler502()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler502() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler502();"
      ],
      "description": [
        "We define a block to be a rectangle with a height of 1 and an integer-valued length. Let a castle be a configuration of stacked blocks.",
        "",
        "Given a game grid that is w units wide and h units tall, a castle is generated according to the following rules:",
        "",
        "",
        "Blocks can be placed on top of other blocks as long as nothing sticks out past the edges or hangs out over open space.",
        "All blocks are aligned/snapped to the grid.",
        "Any two neighboring blocks on the same row have at least one unit of space between them.",
        "The bottom row is occupied by a block of length w.",
        "The maximum achieved height of the entire castle is exactly h.",
        "The castle is made from an even number of blocks.",
        "The following is a sample castle for w=8 and h=5:",
        "",
        "",
        "",
        "Let F(w,h) represent the number of valid castles, given grid parameters w and h.",
        "",
        "For example, F(4,2) = 10, F(13,10) = 3729050610636, F(10,13) = 37959702514, and F(100,100) mod 1 000 000 007 = 841913936.",
        "",
        "Find (F(1012,100) + F(10000,10000) + F(100,1012)) mod 1 000 000 007."
      ]
    },
    {
      "id": "5900f5631000cf542c510076",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 503: Compromise or persist",
      "tests": [
        "assert.strictEqual(euler503(), 3.8694550145, 'message: <code>euler503()</code> should return 3.8694550145.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler503() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler503();"
      ],
      "description": [
        "Alice is playing a game with n cards numbered 1 to n.",
        "",
        "A game consists of iterations of the following steps.",
        "(1) Alice picks one of the cards at random.",
        "(2) Alice cannot see the number on it. Instead, Bob, one of her friends, sees the number and tells Alice how many previously-seen numbers are bigger than the number which he is seeing.",
        "(3) Alice can end or continue the game. If she decides to end, the number becomes her score. If she decides to continue, the card is removed from the game and she returns to (1). If there is no card left, she is forced to end the game.",
        "",
        "Let F(n) be the Alice's expected score if she takes the optimized strategy to minimize her score.",
        "",
        "For example, F(3) = 5/3. At the first iteration, she should continue the game. At the second iteration, she should end the game if Bob says that one previously-seen number is bigger than the number which he is seeing, otherwise she should continue the game.",
        "",
        "We can also verify that F(4) = 15/8 and F(10) ≈ 2.5579365079.",
        "",
        "Find F(106). Give your answer rounded to 10 decimal places behind the decimal point."
      ]
    },
    {
      "id": "5900f5641000cf542c510077",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 504: Square on the Inside",
      "tests": [
        "assert.strictEqual(euler504(), 694687, 'message: <code>euler504()</code> should return 694687.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler504() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler504();"
      ],
      "description": [
        "Let ABCD be a quadrilateral whose vertices are lattice points lying on the coordinate axes as follows:",
        "",
        "A(a, 0), B(0, b), C(−c, 0), D(0, −d), where 1 ≤ a, b, c, d ≤ m and a, b, c, d, m are integers.",
        "",
        "It can be shown that for m = 4 there are exactly 256 valid ways to construct ABCD. Of these 256 quadrilaterals, 42 of them strictly contain a square number of lattice points.",
        "",
        "How many quadrilaterals ABCD strictly contain a square number of lattice points for m = 100?"
      ]
    },
    {
      "id": "5900f5661000cf542c510078",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 505: Bidirectional Recurrence",
      "tests": [
        "assert.strictEqual(euler505(), TODO: MISSING ANSWER, 'message: <code>euler505()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler505() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler505();"
      ],
      "description": [
        "Let:",
        "$\\begin{array}{ll} x(0)&=0 \\\\ x(1)&=1 \\\\ x(2k)&=(3x(k)+2x(\\lfloor \\frac k 2 \\rfloor)) \\text{ mod } 2^{60} \\text{ for } k \\ge 1 \\text {, where } \\lfloor \\text { } \\rfloor \\text { is the floor function} \\\\ x(2k+1)&=(2x(k)+3x(\\lfloor \\frac k 2 \\rfloor)) \\text{ mod } 2^{60} \\text{ for } k \\ge 1 \\\\ y_n(k)&=\\left\\{{\\begin{array}{lc} x(k) && \\text{if } k \\ge n \\\\ 2^{60} - 1 - max(y_n(2k),y_n(2k+1)) && \\text{if } k < n \\end{array}} \\right. \\\\ A(n)&=y_n(1) \\end{array}$",
        "You are given:",
        "$\\begin{array}{ll} x(2)&=3 \\\\ x(3)&=2 \\\\ x(4)&=11 \\\\ y_4(4)&=11 \\\\ y_4(3)&=2^{60}-9\\\\ y_4(2)&=2^{60}-12 \\\\ y_4(1)&=A(4)=8 \\\\ A(10)&=2^{60}-34\\\\ A(10^3)&=101881 \\end{array}$",
        "Find $A(10^{12})$."
      ]
    },
    {
      "id": "5900f5671000cf542c510079",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 506: Clock sequence",
      "tests": [
        "assert.strictEqual(euler506(), 18934502, 'message: <code>euler506()</code> should return 18934502.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler506() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler506();"
      ],
      "description": [
        "Consider the infinite repeating sequence of digits:",
        "1234321234321234321...",
        "Amazingly, you can break this sequence of digits into a sequence of integers such that the sum of the digits in the n'th value is n.",
        "The sequence goes as follows:",
        "1, 2, 3, 4, 32, 123, 43, 2123, 432, 1234, 32123, ...",
        "Let vn be the n'th value in this sequence. For example, v2 = 2, v5 = 32 and v11 = 32123.",
        "Let S(n) be v1 + v2 + ... + vn. For example, S(11) = 36120, and S(1000) mod 123454321 = 18232686.",
        "Find S(1014) mod 123454321."
      ]
    },
    {
      "id": "5900f5671000cf542c51007a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 507: Shortest Lattice Vector",
      "tests": [
        "assert.strictEqual(euler507(), TODO: MISSING ANSWER, 'message: <code>euler507()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler507() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler507();"
      ],
      "description": [
        "Let $t_n$ be the tribonacci numbers defined as:",
        "$t_0 = t_1 = 0$;",
        "$t_2 = 1$;",
        "$t_n = t_{n-1} + t_{n-2} + t_{n-3}$ for $n \\ge 3$",
        "and let $r_n = t_n \\text{ mod } 10^7$.",
        "",
        "",
        "For each pair of Vectors $V_n=(v_1,v_2,v_3)$ and $W_n=(w_1,w_2,w_3)$ with $v_1=r_{12n-11}-r_{12n-10}, v_2=r_{12n-9}+r_{12n-8}, v_3=r_{12n-7} \\cdot r_{12n-6}$  and  $w_1=r_{12n-5}-r_{12n-4}, w_2=r_{12n-3}+r_{12n-2}, w_3=r_{12n-1} \\cdot r_{12n}$",
        "",
        "",
        "we define $S(n)$ as the minimal value of the manhattan length of the vector $D=k \\cdot V_n+l \\cdot W_n$ measured as $|k \\cdot v_1+l \\cdot w_1|+|k \\cdot v_2+l \\cdot w_2|+|k \\cdot v_3+l \\cdot w_3|$",
        " for any integers $k$ and $l$ with $(k,l)\\neq (0,0)$.",
        "",
        "The first vector pair  is (-1, 3, 28), (-11, 125, 40826).",
        "You are given that $S(1)=32$ and $\\sum_{n=1}^{10} S(n)=130762273722$.",
        "",
        "",
        "Find $\\sum_{n=1}^{20000000} S(n)$."
      ]
    },
    {
      "id": "5900f5691000cf542c51007c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 508: Integers in base i-1",
      "tests": [
        "assert.strictEqual(euler508(), TODO: MISSING ANSWER, 'message: <code>euler508()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler508() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler508();"
      ],
      "description": [
        "Consider the Gaussian integer i-1. A base i-1 representation of a Gaussian integer a+bi is a finite sequence of digits dn-1dn-2...d1d0 such that:",
        "",
        "a+bi = dn-1(i-1)n-1 + dn-2(i-1)n-2 + ... + d1(i-1) + d0",
        "Each dk is in {0,1}",
        "There are no leading zeroes, i.e. dn-1 ≠ 0, unless a+bi is itself 0",
        "Here are base i-1 representations of a few Gaussian integers:",
        "11+24i → 111010110001101",
        "24-11i → 110010110011",
        "8+0i → 111000000",
        "-5+0i → 11001101",
        "0+0i → 0",
        "",
        "Remarkably, every Gaussian integer has a unique base i-1 representation!",
        "",
        "Define f(a+bi) as the number of 1s in the unique base i-1 representation of a+bi. For example, f(11+24i) = 9 and f(24-11i) = 7.",
        "",
        "Define B(L) as the sum of f(a+bi) for all integers a, b such that |a| ≤ L and |b| ≤ L. For example, B(500) = 10795060.",
        "",
        "Find B(1015) mod 1 000 000 007."
      ]
    },
    {
      "id": "5900f5691000cf542c51007b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 509: Divisor Nim",
      "tests": [
        "assert.strictEqual(euler509(), 151725678, 'message: <code>euler509()</code> should return 151725678.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler509() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler509();"
      ],
      "description": [
        "Anton and Bertrand love to play three pile Nim.",
        "However, after a lot of games of Nim they got bored and changed the rules somewhat.",
        "They may only take a number of stones from a pile that is a proper divisor of the number of stones present in the pile. E.g. if a pile at a certain moment contains 24 stones they may take only 1,2,3,4,6,8 or 12 stones from that pile.",
        "So if a pile contains one stone they can't take the last stone from it as 1 isn't a proper divisor of 1.",
        "The first player that can't make a valid move loses the game.",
        "Of course both Anton and Bertrand play optimally.",
        "",
        "The triple (a,b,c) indicates the number of stones in the three piles.",
        "Let S(n) be the number of winning positions for the next player for 1 ≤ a, b, c ≤ n.S(10) = 692 and S(100) = 735494.",
        "",
        "Find S(123456787654321) modulo 1234567890."
      ]
    },
    {
      "id": "5900f56b1000cf542c51007d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 510: Tangent Circles",
      "tests": [
        "assert.strictEqual(euler510(), 315306518862563700, 'message: <code>euler510()</code> should return 315306518862563700.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler510() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler510();"
      ],
      "description": [
        "Circles A and B are tangent to each other and to line L at three distinct points.",
        "Circle C is inside the space between A, B and L, and tangent to all three.",
        "Let rA, rB and rC be the radii of A, B and C respectively.",
        "Let S(n) = Σ rA + rB + rC, for 0 < rA ≤ rB ≤ n where rA, rB and rC are integers.",
        "The only solution for 0 < rA ≤ rB ≤ 5 is rA = 4, rB = 4 and rC = 1, so S(5) = 4 + 4 + 1 = 9.",
        "You are also given S(100) = 3072.",
        "Find S(109)."
      ]
    },
    {
      "id": "5900f56b1000cf542c51007e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 511: Sequences with nice divisibility properties",
      "tests": [
        "assert.strictEqual(euler511(), 935247012, 'message: <code>euler511()</code> should return 935247012.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler511() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler511();"
      ],
      "description": [
        "Let Seq(n,k) be the number of positive-integer sequences {ai}1≤i≤n of length n such that:",
        "n is divisible by ai for 1 ≤ i ≤ n, and",
        "  n + a1 + a2 + ... + an is divisible by k.",
        "Examples:",
        "Seq(3,4) = 4, and the 4 sequences are:",
        "{1, 1, 3}",
        "{1, 3, 1}",
        "{3, 1, 1}",
        "{3, 3, 3}",
        "Seq(4,11) = 8, and the 8 sequences are:",
        "{1, 1, 1, 4}",
        "{1, 1, 4, 1}",
        "{1, 4, 1, 1}",
        "{4, 1, 1, 1}",
        "{2, 2, 2, 1}",
        "{2, 2, 1, 2}",
        "{2, 1, 2, 2}",
        "{1, 2, 2, 2}",
        "The last nine digits of Seq(1111,24) are 840643584.",
        "Find the last nine digits of Seq(1234567898765,4321)."
      ]
    },
    {
      "id": "5900f56d1000cf542c51007f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 512: Sums of totients of powers",
      "tests": [
        "assert.strictEqual(euler512(), 50660591862310320, 'message: <code>euler512()</code> should return 50660591862310320.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler512() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler512();"
      ],
      "description": [
        "Let $\\varphi(n)$ be Euler's totient function.",
        "Let $f(n)=(\\sum_{i=1}^{n}\\varphi(n^i)) \\text{ mod } (n+1)$.",
        "Let $g(n)=\\sum_{i=1}^{n} f(i)$.",
        "$g(100)=2007$.",
        "",
        "",
        "Find $g(5 \\times 10^8)$."
      ]
    },
    {
      "id": "5900f56e1000cf542c510080",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 513: Integral median",
      "tests": [
        "assert.strictEqual(euler513(), TODO: MISSING ANSWER, 'message: <code>euler513()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler513() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler513();"
      ],
      "description": [
        "ABC is an integral sided triangle with sides a≤b≤c.",
        "mc is the median connecting C and the midpoint of AB. ",
        "F(n) is the number of such triangles with  c≤n for which mc has integral length as well.",
        "F(10)=3 and F(50)=165.",
        "",
        "Find F(100000)."
      ]
    },
    {
      "id": "5900f56f1000cf542c510081",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 514: Geoboard Shapes",
      "tests": [
        "assert.strictEqual(euler514(), TODO: MISSING ANSWER, 'message: <code>euler514()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler514() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler514();"
      ],
      "description": [
        "A geoboard (of order N) is a square board with equally-spaced pins protruding from the surface, representing an integer point lattice for coordinates 0 ≤ x,y ≤ N.",
        "",
        "John begins with a pinless geoboard. Each position on the board is a hole that can be filled with a pin. John decides to generate a random integer between 1 and N+1 (inclusive) for each hole in the geoboard. If the random integer is equal to 1 for a given hole, then a pin is placed in that hole.",
        "",
        "After John is finished generating numbers for all (N+1)2 holes and placing any/all corresponding pins, he wraps a tight rubberband around the entire group of pins protruding from the board. Let S represent the shape that is formed. S can also be defined as the smallest convex shape that contains all the pins.",
        "",
        "",
        "",
        "The above image depicts a sample layout for N = 4. The green markers indicate positions where pins have been placed, and the blue lines collectively represent the rubberband. For this particular arrangement, S has an area of 6. If there are fewer than three pins on the board (or if all pins are collinear), S can be assumed to have zero area.",
        "",
        "Let E(N) be the expected area of S given a geoboard of order N. For example, E(1) = 0.18750, E(2) = 0.94335, and E(10) = 55.03013 when rounded to five decimal places each.",
        "",
        "Calculate E(100) rounded to five decimal places."
      ]
    },
    {
      "id": "5900f5711000cf542c510083",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 515: Dissonant Numbers",
      "tests": [
        "assert.strictEqual(euler515(), 2422639000800, 'message: <code>euler515()</code> should return 2422639000800.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler515() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler515();"
      ],
      "description": [
        "Let d(p,n,0) be the multiplicative inverse of n modulo prime p, defined as n × d(p,n,0) = 1 mod p.",
        "Let d(p,n,k) = $\\sum_{i=1}^n$d(p,i,k−1) for k ≥ 1.",
        "Let D(a,b,k) = $\\sum$(d(p,p-1,k) mod p) for all primes a ≤ p < a + b.",
        "You are given:",
        "D(101,1,10) = 45",
        "D(103,102,102) = 8334",
        "D(106,103,103) = 38162302Find D(109,105,105)."
      ]
    },
    {
      "id": "5900f5701000cf542c510082",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 516: 5-smooth totients",
      "tests": [
        "assert.strictEqual(euler516(), 939087315, 'message: <code>euler516()</code> should return 939087315.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler516() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler516();"
      ],
      "description": [
        "5-smooth numbers are numbers whose largest prime factor doesn't exceed 5.",
        "5-smooth numbers are also called Hamming numbers.",
        "Let S(L) be the sum of the numbers n not exceeding L such that Euler's totient function φ(n) is a Hamming number.",
        "S(100)=3728.",
        "",
        "",
        "Find S(1012). Give your answer modulo 232."
      ]
    },
    {
      "id": "5900f5721000cf542c510084",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 517: A real recursion",
      "tests": [
        "assert.strictEqual(euler517(), 581468882, 'message: <code>euler517()</code> should return 581468882.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler517() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler517();"
      ],
      "description": [
        "For every real number $a \\gt 1$ is given the sequence $g_a$ by:",
        "$g_{a}(x)=1$ for $x \\lt a$",
        "$g_{a}(x)=g_{a}(x-1)+g_a(x-a)$ for $x \\ge a$",
        "",
        "$G(n)=g_{\\sqrt {n}}(n)$",
        "$G(90)=7564511$.",
        "",
        "Find $\\sum G(p)$ for $p$ prime and $10000000 \\lt p \\lt 10010000$",
        "Give your answer modulo 1000000007."
      ]
    },
    {
      "id": "5900f5721000cf542c510085",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 518: Prime triples and geometric sequences",
      "tests": [
        "assert.strictEqual(euler518(), 100315739184392, 'message: <code>euler518()</code> should return 100315739184392.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler518() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler518();"
      ],
      "description": [
        "Let S(n) = Σ a+b+c over all triples (a,b,c) such that:",
        "",
        "a, b, and c are prime numbers.",
        "a < b < c < n.",
        "a+1, b+1, and c+1 form a geometric sequence.",
        "For example, S(100) = 1035 with the following triples: ",
        "",
        "(2, 5, 11), (2, 11, 47), (5, 11, 23), (5, 17, 53), (7, 11, 17), (7, 23, 71), (11, 23, 47), (17, 23, 31), (17, 41, 97), (31, 47, 71), (71, 83, 97)",
        "",
        "Find S(108)."
      ]
    },
    {
      "id": "5900f5741000cf542c510086",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 519: Tricolored Coin Fountains",
      "tests": [
        "assert.strictEqual(euler519(), 804739330, 'message: <code>euler519()</code> should return 804739330.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler519() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler519();"
      ],
      "description": [
        "An arrangement of coins in one or more rows with the bottom row being a block without gaps and every coin in a higher row touching exactly two coins in the row below is called a fountain of coins. Let f(n) be the number of possible fountains with n coins. For 4 coins there are three possible arrangements:",
        "",
        "Therefore f(4) = 3 while f(10) = 78.",
        "Let T(n) be the number of all possible colorings with three colors for all f(n) different fountains with n coins, given the condition that no two touching coins have the same color. Below you see the possible colorings for one of the three valid fountains for 4 coins:",
        "",
        "You are given that T(4) = 48 and T(10) = 17760.",
        "Find the last 9 digits of T(20000)."
      ]
    },
    {
      "id": "5900f5751000cf542c510087",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 520: Simbers",
      "tests": [
        "assert.strictEqual(euler520(), 238413705, 'message: <code>euler520()</code> should return 238413705.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler520() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler520();"
      ],
      "description": [
        "We define a simber to be a positive integer in which any odd digit, if present, occurs an odd number of times, and any even digit, if present, occurs an even number of times.",
        "",
        "For example, 141221242 is a 9-digit simber because it has three 1's, four 2's and two 4's. ",
        "",
        "Let Q(n) be the count of all simbers with at most n digits. ",
        "",
        "You are given Q(7) = 287975 and Q(100) mod 1 000 000 123 = 123864868.",
        "",
        "Find (∑1≤u≤39 Q(2u)) mod 1 000 000 123."
      ]
    },
    {
      "id": "5900f5751000cf542c510088",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 521: Smallest prime factor",
      "tests": [
        "assert.strictEqual(euler521(), 44389811, 'message: <code>euler521()</code> should return 44389811.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler521() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler521();"
      ],
      "description": [
        "Let smpf(n) be the smallest prime factor of n.",
        "smpf(91)=7 because 91=7×13 and smpf(45)=3 because 45=3×3×5.",
        "Let S(n) be the sum of smpf(i) for 2 ≤ i ≤ n.",
        "E.g. S(100)=1257.",
        "",
        "",
        "",
        "Find S(1012) mod 109."
      ]
    },
    {
      "id": "5900f5761000cf542c510089",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 522: Hilbert's Blackout",
      "tests": [
        "assert.strictEqual(euler522(), TODO: MISSING ANSWER, 'message: <code>euler522()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler522() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler522();"
      ],
      "description": [
        "Despite the popularity of Hilbert's infinite hotel, Hilbert decided to try managing extremely large finite hotels, instead. ",
        "",
        "To cut costs, Hilbert wished to power the new hotel with his own special generator. Each floor would send power to the floor above it, with the top floor sending power back down to the bottom floor. That way, Hilbert could have the generator placed on any given floor (as he likes having the option) and have electricity flow freely throughout the entire hotel.",
        "",
        "Unfortunately, the contractors misinterpreted the schematics when they built the hotel. They informed Hilbert that each floor sends power to another floor at random, instead. This may compromise Hilbert's freedom to have the generator placed anywhere, since blackouts could occur on certain floors.",
        "",
        "For example, consider a sample flow diagram for a three-story hotel:",
        "",
        "",
        "",
        "If the generator were placed on the first floor, then every floor would receive power. But if it were placed on the second or third floors instead, then there would be a blackout on the first floor. Note that while a given floor can receive power from many other floors at once, it can only send power to one other floor.",
        "",
        "To resolve the blackout concerns, Hilbert decided to have a minimal number of floors rewired. To rewire a floor is to change the floor it sends power to. In the sample diagram above, all possible blackouts can be avoided by rewiring the second floor to send power to the first floor instead of the third floor.",
        "",
        "Let F(n) be the sum of the minimum number of floor rewirings needed over all possible power-flow arrangements in a hotel of n floors. For example, F(3) = 6, F(8) = 16276736, and F(100) mod 135707531 = 84326147.",
        "",
        "Find F(12344321) mod 135707531."
      ]
    },
    {
      "id": "5900fe885726495c153991c8",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 523: First Sort I",
      "tests": [
        "assert.strictEqual(euler523(), TODO: MISSING ANSWER, 'message: <code>euler523()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler523() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler523();"
      ],
      "description": [
        "Consider the following algorithm for sorting a list:",
        "1. Starting from the beginning of the list, check each pair of adjacent elements in turn.",
        "2. If the elements are out of order:",
        "a. Move the smallest element of the pair at the beginning of the list.",
        "b. Restart the process from step 1.",
        "3. If all pairs are in order, stop.For example, the list { 4 1 3 2 } is sorted as follows:",
        "4 1 3 2  (4 and 1 are out of order so move 1 to the front of the list)",
        "1 4 3 2  (4 and 3 are out of order so move 3 to the front of the list)",
        "3 1 4 2  (3 and 1 are out of order so move 1 to the front of the list)",
        "1 3 4 2  (4 and 2 are out of order so move 2 to the front of the list)",
        "2 1 3 4  (2 and 1 are out of order so move 1 to the front of the list)",
        "1 2 3 4  (The list is now sorted)Let F(L) be the number of times step 2a is executed to sort list L. For example, F({ 4 1 3 2 }) = 5.",
        "",
        "Let E(n) be the expected value of F(P) over all permutations P of the integers {1, 2, ..., n}.",
        "You are given E(4) = 3.25 and E(10) = 115.725.",
        "",
        "Find E(30). Give your answer rounded to two digits after the decimal point."
      ]
    },
    {
      "id": "5900fece58d9425c70af4f5e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 524: First Sort II",
      "tests": [
        "assert.strictEqual(euler524(), TODO: MISSING ANSWER, 'message: <code>euler524()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler524() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler524();"
      ],
      "description": [
        "Consider the following algorithm for sorting a list:",
        "1. Starting from the beginning of the list, check each pair of adjacent elements in turn.",
        "2. If the elements are out of order:",
        "a. Move the smallest element of the pair at the beginning of the list.",
        "b. Restart the process from step 1.",
        "3. If all pairs are in order, stop.For example, the list { 4 1 3 2 } is sorted as follows:",
        "4 1 3 2  (4 and 1 are out of order so move 1 to the front of the list)",
        "1 4 3 2  (4 and 3 are out of order so move 3 to the front of the list)",
        "3 1 4 2  (3 and 1 are out of order so move 1 to the front of the list)",
        "1 3 4 2  (4 and 2 are out of order so move 2 to the front of the list)",
        "2 1 3 4  (2 and 1 are out of order so move 1 to the front of the list)",
        "1 2 3 4  (The list is now sorted)Let F(L) be the number of times step 2a is executed to sort list L. For example, F({ 4 1 3 2 }) = 5.",
        "",
        "We can list all permutations P of the integers {1, 2, ..., n} in lexicographical order, and assign to each permutation an index In(P) from 1 to n! corresponding to its position in the list.",
        "",
        "Let Q(n, k) = min(In(P)) for F(P) = k, the index of the first permutation requiring exactly k steps to sort with First Sort. If there is no permutation for which F(P) = k, then Q(n, k) is undefined.",
        "",
        "For n = 4 we have:",
        "",
        "PI4(P)F(P){1, 2, 3, 4}10Q(4, 0) = 1{1, 2, 4, 3}24Q(4, 4) = 2{1, 3, 2, 4}32Q(4, 2) = 3{1, 3, 4, 2}42{1, 4, 2, 3}56Q(4, 6) = 5{1, 4, 3, 2}64{2, 1, 3, 4}71Q(4, 1) = 7{2, 1, 4, 3}85Q(4, 5) = 8{2, 3, 1, 4}91{2, 3, 4, 1}101{2, 4, 1, 3}115{2, 4, 3, 1}123Q(4, 3) = 12{3, 1, 2, 4}133{3, 1, 4, 2}143{3, 2, 1, 4}152{3, 2, 4, 1}162{3, 4, 1, 2}173{3, 4, 2, 1}182{4, 1, 2, 3}197Q(4, 7) = 19{4, 1, 3, 2}205{4, 2, 1, 3}216{4, 2, 3, 1}224{4, 3, 1, 2}234{4, 3, 2, 1}243Let R(k) = min(Q(n, k)) over all n for which Q(n, k) is defined.",
        "",
        "Find R(1212)."
      ]
    },
    {
      "id": "5900fecf58d9425c70af4f5f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 525: Rolling Ellipse",
      "tests": [
        "assert.strictEqual(euler525(), TODO: MISSING ANSWER, 'message: <code>euler525()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler525() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler525();"
      ],
      "description": [
        "An ellipse E(a, b) is given at its initial position by equation:",
        "$\\frac {x^2} {a^2} + \\frac {(y - b)^2} {b^2} = 1$",
        "",
        "The ellipse rolls without slipping along the x axis for one complete turn. Interestingly, the length of the curve generated by a focus is independent from the size of the minor axis:",
        "$F(a,b) =  2 \\pi \\text{ } max(a,b)$",
        "",
        "",
        "",
        "This is not true for the curve generated by the ellipse center. Let C(a,b) be the length of the curve generated by the center of the ellipse as it rolls without slipping for one turn.",
        "",
        "",
        "",
        "You are given C(2, 4) ~ 21.38816906.",
        "",
        "Find C(1, 4) + C(3, 4). Give your answer rounded to 8 digits behind the decimal point in the form ab.cdefghij."
      ]
    },
    {
      "id": "5900fed058d9425c70af4f60",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 526: Largest prime factors of consecutive numbers",
      "tests": [
        "assert.strictEqual(euler526(), TODO: MISSING ANSWER, 'message: <code>euler526()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler526() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler526();"
      ],
      "description": [
        "Let f(n) be the largest prime factor of n.",
        "Let g(n) = f(n) + f(n+1) + f(n+2) + f(n+3) + f(n+4) + f(n+5) + f(n+6) + f(n+7) + f(n+8), the sum of the largest prime factor of each of nine consecutive numbers starting with n.",
        "Let h(n) be the maximum value of g(k) for 2 ≤ k ≤ n.",
        "You are given:",
        "f(100) = 5",
        "f(101) = 101",
        "g(100) = 409",
        "h(100) = 417",
        "h(109) = 4896292593Find h(1016)."
      ]
    },
    {
      "id": "5900fed158d9425c70af4f61",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 527: Randomized Binary Search",
      "tests": [
        "assert.strictEqual(euler527(), TODO: MISSING ANSWER, 'message: <code>euler527()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler527() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler527();"
      ],
      "description": [
        "A secret integer t is selected at random within the range 1 ≤ t ≤ n. ",
        "",
        "The goal is to guess the value of t by making repeated guesses, via integer g. After a guess is made, there are three possible outcomes, in which it will be revealed that either g < t, g = t, or g > t. Then the process can repeat as necessary.",
        "",
        "Normally, the number of guesses required on average can be minimized with a binary search: Given a lower bound L and upper bound H (initialized to L = 1 and H = n), let g = ⌊(L+H)/2⌋ where ⌊⋅⌋ is the integer floor function. If g = t, the process ends. Otherwise, if g < t, set L = g+1, but if g > t instead, set H = g−1. After setting the new bounds, the search process repeats, and ultimately ends once t is found. Even if t can be deduced without searching, assume that a search will be required anyway to confirm the value.",
        "",
        "Your friend Bob believes that the standard binary search is not that much better than his randomized variant: Instead of setting g = ⌊(L+H)/2⌋, simply let g be a random integer between L and H, inclusive. The rest of the algorithm is the same as the standard binary search. This new search routine will be referred to as a random binary search.",
        "",
        "Given that 1 ≤ t ≤ n for random t, let B(n) be the expected number of guesses needed to find t using the standard binary search, and let R(n) be the expected number of guesses needed to find t using the random binary search. For example, B(6) = 2.33333333 and R(6) = 2.71666667 when rounded to 8 decimal places.",
        "",
        "Find R(1010) − B(1010) rounded to 8 decimal places."
      ]
    },
    {
      "id": "5900fed258d9425c70af4f62",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 528: Constrained Sums",
      "tests": [
        "assert.strictEqual(euler528(), TODO: MISSING ANSWER, 'message: <code>euler528()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler528() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler528();"
      ],
      "description": [
        "Let S(n,k,b) represent the number of valid solutions to x1 + x2 + ... + xk ≤ n, where 0 ≤ xm ≤ bm for all 1 ≤ m ≤ k.",
        "",
        "For example, S(14,3,2) = 135, S(200,5,3) = 12949440, and S(1000,10,5) mod 1 000 000 007 = 624839075.",
        "",
        "Find (∑10 ≤ k ≤ 15 S(10k,k,k)) mod 1 000 000 007."
      ]
    },
    {
      "id": "5900fed358d9425c70af4f63",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 529: 10-substrings",
      "tests": [
        "assert.strictEqual(euler529(), TODO: MISSING ANSWER, 'message: <code>euler529()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler529() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler529();"
      ],
      "description": [
        "A 10-substring of a number is a substring of its digits that sum to 10. For example, the 10-substrings of the number 3523014 are:",
        "3523014",
        "3523014",
        "3523014",
        "3523014A number is called 10-substring-friendly if every one of its digits belongs to a 10-substring. For example, 3523014 is 10-substring-friendly, but 28546 is not.",
        "Let T(n) be the number of 10-substring-friendly numbers from 1 to 10n (inclusive).",
        "For example T(2) = 9 and T(5) = 3492.",
        "Find T(1018) mod 1 000 000 007."
      ]
    },
    {
      "id": "5900fed458d9425c70af4f64",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 530: GCD of Divisors",
      "tests": [
        "assert.strictEqual(euler530(), TODO: MISSING ANSWER, 'message: <code>euler530()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler530() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler530();"
      ],
      "description": [
        "Every divisor d of a number n has a complementary divisor n/d.",
        "",
        "Let f(n) be the sum of the greatest common divisor of d and n/d over all positive divisors d of n, that is",
        "$f(n)=\\displaystyle\\sum\\limits_{d|n}\\, \\text{gcd}(d,\\frac n d)$.",
        "",
        "Let F be the summatory function of f, that is",
        "$F(k)=\\displaystyle\\sum\\limits_{n=1}^k \\, f(n)$.",
        "",
        "You are given that F(10)=32 and F(1000)=12776.",
        "",
        "Find F(1015)."
      ]
    },
    {
      "id": "5900fed558d9425c70af4f65",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 531: Chinese leftovers",
      "tests": [
        "assert.strictEqual(euler531(), TODO: MISSING ANSWER, 'message: <code>euler531()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler531() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler531();"
      ],
      "description": [
        "Let g(a,n,b,m) be the smallest non-negative solution x to the system:x = a mod nx = b mod m",
        "if such a solution exists, otherwise 0.",
        "",
        "",
        "E.g. g(2,4,4,6)=10, but g(3,4,4,6)=0.",
        "",
        "",
        "Let φ(n) be Euler's totient function.",
        "",
        "",
        "Let f(n,m)=g(φ(n),n,φ(m),m)",
        "",
        "",
        "Find ∑f(n,m) for 1000000 ≤ n < m < 1005000"
      ]
    },
    {
      "id": "5900fed658d9425c70af4f66",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 532: Nanobots on Geodesics",
      "tests": [
        "assert.strictEqual(euler532(), TODO: MISSING ANSWER, 'message: <code>euler532()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler532() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler532();"
      ],
      "description": [
        "Bob is a manufacturer of nanobots and wants to impress his customers by giving them a ball colored by his new nanobots as a present.",
        "",
        "His nanobots can be programmed to select and locate exactly one other bot precisely and, after activation, move towards this bot along the shortest possible path and draw a colored line onto the surface while moving. Placed on a plane, the bots will start to move towards their selected bots in a straight line. In contrast, being placed on a ball, they will start to move along a geodesic as the shortest possible path. However, in both cases, whenever their target moves they will adjust their direction instantaneously to the new shortest possible path. All bots will move at the same speed after their simultaneous activation until each bot reaches its goal.",
        "",
        "Now Bob places n bots on the ball (with radius 1) equidistantly on a small circle with radius 0.999 and programs each of them to move toward the next nanobot sitting counterclockwise on that small circle. After activation, the bots move in a sort of spiral until they finally meet at one point on the ball.",
        "",
        "Using three bots, Bob finds that every bot will draw a line of length 2.84, resulting in a total length of 8.52 for all three bots, each time rounded to two decimal places. The colored ball looks like this:",
        "",
        "",
        "",
        "In order to show off a little with his presents, Bob decides to use just enough bots to make sure that the line each bot draws is longer than 1000. What is the total length of all lines drawn with this number of bots, rounded to two decimal places?"
      ]
    },
    {
      "id": "5900fed758d9425c70af4f67",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 533: Minimum values of the Carmichael function",
      "tests": [
        "assert.strictEqual(euler533(), TODO: MISSING ANSWER, 'message: <code>euler533()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler533() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler533();"
      ],
      "description": [
        "The Carmichael function λ(n) is defined as the smallest positive integer m such that am = 1 modulo n for all integers a coprime with n.",
        "For example λ(8) = 2 and λ(240) = 4.",
        "",
        "Define L(n) as the smallest positive integer m such that λ(k) ≥ n for all k ≥ m.",
        "For example, L(6) = 241 and L(100) = 20 174 525 281.",
        "",
        "Find L(20 000 000). Give the last 9 digits of your answer."
      ]
    },
    {
      "id": "5900fed858d9425c70af4f68",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 534: Weak Queens",
      "tests": [
        "assert.strictEqual(euler534(), TODO: MISSING ANSWER, 'message: <code>euler534()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler534() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler534();"
      ],
      "description": [
        "The classical eight queens puzzle is the well known problem of placing eight chess queens on a 8×8 chessboard so that no two queens threaten each other. Allowing configurations to reappear in rotated or mirrored form, a total of 92 distinct configurations can be found for eight queens. The general case asks for the number of distinct ways of placing n queens on a n×n board, e.g. you can find 2 distinct configurations for n=4.",
        "",
        "Lets define a weak queen on a n×n board to be a piece which can move any number of squares if moved horizontally, but a maximum of n−1−w squares if moved vertically or diagonally, 0≤w<n being the \"weakness factor\". For example, a weak queen on a n×n board with a weakness factor of w=1 located in the bottom row will not be able to threaten any square in the top row as the weak queen would need to move n−1 squares vertically or diagonally to get there, but may only move n−2 squares in these directions. In contrast, the weak queen is not handicapped horizontally, thus threatening every square in its own row, independently from its current position in that row.",
        "",
        "Let Q(n,w) be the number of ways n weak queens with weakness factor w can be placed on a n×n board so that no two queens threaten each other. It can be shown, for example, that Q(4,0)=2, Q(4,2)=16 and Q(4,3)=256.",
        "",
        "Let $S(n)=\\displaystyle\\sum_{w=0}^{n-1} Q(n,w)$.",
        "",
        "You are given that S(4)=276 and S(5)=3347.",
        "",
        "Find S(14)."
      ]
    },
    {
      "id": "5900fed958d9425c70af4f69",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 535: Fractal Sequence",
      "tests": [
        "assert.strictEqual(euler535(), TODO: MISSING ANSWER, 'message: <code>euler535()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler535() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler535();"
      ],
      "description": [
        "Consider the infinite integer sequence S starting with:S = 1, 1, 2, 1, 3, 2, 4, 1, 5, 3, 6, 2, 7, 8, 4, 9, 1, 10, 11, 5, ...",
        "",
        "Circle the first occurrence of each integer.S = ①, 1, ②, 1, ③, 2, ④, 1, ⑤, 3, ⑥, 2, ⑦, ⑧, 4, ⑨, 1, ⑩, ⑪, 5, ...",
        "",
        "The sequence is characterized by the following properties:",
        "The circled numbers are consecutive integers starting with 1.",
        "Immediately preceding each non-circled numbers ai, there are exactly ⌊√ai⌋ adjacent circled numbers, where ⌊⌋ is the floor function.",
        "If we remove all circled numbers, the remaining numbers form a sequence identical to S, so S is a fractal sequence.Let T(n) be the sum of the first n elements of the sequence.",
        "You are given T(1) = 1, T(20) = 86, T(103) = 364089 and T(109) = 498676527978348241.",
        "",
        "Find T(1018). Give the last 9 digits of your answer."
      ]
    },
    {
      "id": "5900feda58d9425c70af4f6a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 536: Modulo power identity",
      "tests": [
        "assert.strictEqual(euler536(), TODO: MISSING ANSWER, 'message: <code>euler536()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler536() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler536();"
      ],
      "description": [
        "Let S(n) be the sum of all positive integers m not exceeding n having the following property:a m+4 ≡ a (mod m) for all integers a.",
        "",
        "",
        "The values of m ≤ 100 that satisfy this property are 1, 2, 3, 5 and 21, thus S(100) = 1+2+3+5+21 = 32.",
        "You are given S(106) = 22868117.",
        "",
        "",
        "Find S(1012)."
      ]
    },
    {
      "id": "5900fedb58d9425c70af4f6b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 537: Counting tuples",
      "tests": [
        "assert.strictEqual(euler537(), TODO: MISSING ANSWER, 'message: <code>euler537()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler537() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler537();"
      ],
      "description": [
        "Let π(x) be the prime counting function, i.e. the number of prime numbers less than or equal to x.",
        "For example, π(1)=0, π(2)=1, π(100)=25.",
        "",
        "",
        "Let T(n,k) be the number of k-tuples (x1,…,xk) which satisfy:",
        "1. every xi is a positive integer;",
        "2. $\\displaystyle \\sum_{i=1}^k \\pi(x_i)=n$",
        "",
        "",
        "For example T(3,3)=19.",
        "The 19 tuples are (1,1,5), (1,5,1), (5,1,1), (1,1,6), (1,6,1), (6,1,1), (1,2,3), (1,3,2), (2,1,3), (2,3,1), (3,1,2), (3,2,1), (1,2,4), (1,4,2), (2,1,4), (2,4,1), (4,1,2), (4,2,1), (2,2,2).",
        "",
        "",
        "You are given T(10,10) = 869 985 and T(103,103) ≡ 578 270 566 (mod 1 004 535 809).",
        "",
        "Find T(20 000, 20 000) mod 1 004 535 809."
      ]
    },
    {
      "id": "5900fedc58d9425c70af4f6c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 538: Maximum quadrilaterals",
      "tests": [
        "assert.strictEqual(euler538(), TODO: MISSING ANSWER, 'message: <code>euler538()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler538() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler538();"
      ],
      "description": [
        "Consider a positive integer sequence S = (s1, s2, ..., sn).",
        "",
        "Let f(S) be the perimeter of the maximum-area quadrilateral whose side lengths are 4 elements (si, sj, sk, sl) of S (all i, j, k, l distinct). If there are many quadrilaterals with the same maximum area, then choose the one with the largest perimeter.",
        "",
        "For example, if S = (8, 9, 14, 9, 27), then we can take the elements (9, 14, 9, 27) and form an isosceles trapezium with parallel side lengths 14 and 27 and both leg lengths 9. The area of this quadrilateral is 127.611470879... It can be shown that this is the largest area for any quadrilateral that can be formed using side lengths from S. Therefore, f(S) = 9 + 14 + 9 + 27 = 59.",
        "",
        "Let un = 2B(3n) + 3B(2n) + B(n+1), where B(k) is the number of 1 bits of k in base 2.",
        "For example, B(6) = 2, B(10) = 2 and B(15) = 4, and u5 = 24 + 32 + 2 = 27.",
        "",
        "Also, let Un be the sequence (u1, u2, ..., un).",
        "For example, U10 = (8, 9, 14, 9, 27, 16, 36, 9, 27, 28).",
        "",
        "It can be shown that f(U5) = 59, f(U10) = 118, f(U150) = 3223.",
        "It can also be shown that Σ f(Un) = 234761 for 4 ≤ n ≤ 150.",
        "Find Σ f(Un) for 4 ≤ n ≤ 3 000 000."
      ]
    },
    {
      "id": "5900fedd58d9425c70af4f6d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 539: Odd elimination",
      "tests": [
        "assert.strictEqual(euler539(), TODO: MISSING ANSWER, 'message: <code>euler539()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler539() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler539();"
      ],
      "description": [
        "Start from an ordered list of all integers from 1 to n. Going from left to right, remove the first number and every other number afterward until the end of the list. Repeat the procedure from right to left, removing the right most number and every other number from the numbers left. Continue removing every other numbers, alternating left to right and right to left, until a single number remains.",
        "",
        "",
        "Starting with n = 9, we have:1 2 3 4 5 6 7 8 9",
        "2 4 6 82 6",
        "6",
        "",
        "",
        "Let P(n) be the last number left starting with a list of length n.",
        "Let $\\displaystyle S(n) = \\sum_{k=1}^n P(k)$.",
        "You are given P(1)=1, P(9) = 6, P(1000)=510, S(1000)=268271.",
        "",
        "",
        "Find S(1018) mod 987654321."
      ]
    },
    {
      "id": "5900fede58d9425c70af4f6e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 540: Counting primitive Pythagorean triples",
      "tests": [
        "assert.strictEqual(euler540(), TODO: MISSING ANSWER, 'message: <code>euler540()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler540() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler540();"
      ],
      "description": [
        "A Pythagorean triple consists of three positive integers $a, b$ and $c$ satisfying $a^2+b^2=c^2$.",
        "The triple is called primitive if $a, b$ and $c$ are relatively prime.",
        "Let P($n$) be the number of primitive Pythagorean triples with $a < b < c <= n$.",
        "For example P(20) = 3, since there are three triples: (3,4,5), (5,12,13) and (8,15,17).",
        "",
        "",
        "You are given that P(106) = 159139.",
        "Find P(3141592653589793)."
      ]
    },
    {
      "id": "5900fedf58d9425c70af4f6f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 541: Divisibility of Harmonic Number Denominators",
      "tests": [
        "assert.strictEqual(euler541(), TODO: MISSING ANSWER, 'message: <code>euler541()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler541() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler541();"
      ],
      "description": [
        "The nthharmonic number Hn is defined as the sum of the multiplicative inverses of the first n positive integers, and can be written as a reduced fraction an/bn.",
        "$H_n = \\displaystyle \\sum_{k=1}^n \\frac 1 k = \\frac {a_n} {b_n}$, with $\\text {gcd}(a_n, b_n)=1$.",
        "",
        "Let M(p) be the largest value of n such that bn is not divisible by p.",
        "",
        "For example, M(3) = 68 because $H_{68} = \\frac {a_{68}} {b_{68}} = \\frac {14094018321907827923954201611} {2933773379069966367528193600}$, b68=2933773379069966367528193600 is not divisible by 3, but all larger harmonic numbers have denominators divisible by 3.",
        "",
        "You are given M(7) = 719102.",
        "",
        "Find M(137)."
      ]
    },
    {
      "id": "5900fee058d9425c70af4f70",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 542: Geometric Progression with Maximum Sum",
      "tests": [
        "assert.strictEqual(euler542(), TODO: MISSING ANSWER, 'message: <code>euler542()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler542() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler542();"
      ],
      "description": [
        "Let S(k) be the sum of three or more distinct positive integers having the following properties:",
        "No value exceeds k.",
        "The values form a geometric progression.",
        "The sum is maximal.S(4) = 4 + 2 + 1 = 7S(10) = 9 + 6 + 4 = 19S(12) = 12 + 6 + 3 = 21S(1000) = 1000 + 900 + 810 + 729 = 3439",
        "",
        "Let $T(n) = \\sum_{k=4}^n (-1)^k S(k)$.T(1000) = 2268",
        "",
        "Find T(1017)."
      ]
    },
    {
      "id": "5900fee158d9425c70af4f71",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 543: Prime-Sum Numbers",
      "tests": [
        "assert.strictEqual(euler543(), TODO: MISSING ANSWER, 'message: <code>euler543()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler543() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler543();"
      ],
      "description": [
        "Define function P(n,k) = 1 if n can be written as the sum of k prime numbers (with repetitions allowed), and P(n,k) = 0 otherwise.",
        "",
        "For example, P(10,2) = 1 because 10 can be written as either 3 + 7 or 5 + 5, but P(11,2) = 0 because no two primes can sum to 11.",
        "",
        "Let S(n) be the sum of all P(i,k) over 1 ≤ i,k ≤ n.",
        "",
        "For example, S(10) = 20, S(100) = 2402, and S(1000) = 248838.",
        "",
        "Let F(k) be the kth Fibonacci number (with F(0) = 0 and F(1) = 1).",
        "",
        "Find the sum of all S(F(k)) over 3 ≤ k ≤ 44"
      ]
    },
    {
      "id": "5900fee258d9425c70af4f72",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 544: Chromatic Conundrum",
      "tests": [
        "assert.strictEqual(euler544(), TODO: MISSING ANSWER, 'message: <code>euler544()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler544() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler544();"
      ],
      "description": [
        "Let F(r,c,n) be the number of ways to color a rectangular grid with r rows and c columns using at most n colors such that no two adjacent cells share the same color. Cells that are diagonal to each other are not considered adjacent.",
        "",
        "For example, F(2,2,3) = 18, F(2,2,20) = 130340, and F(3,4,6) = 102923670.",
        "",
        "Let S(r,c,n) = $\\sum_{k=1}^{n}$ F(r,c,k).",
        "",
        "For example, S(4,4,15) mod 109+7 = 325951319.",
        "",
        "Find S(9,10,1112131415) mod 109+7."
      ]
    },
    {
      "id": "5900fee358d9425c70af4f73",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 545: Faulhaber's Formulas",
      "tests": [
        "assert.strictEqual(euler545(), TODO: MISSING ANSWER, 'message: <code>euler545()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler545() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler545();"
      ],
      "description": [
        "The sum of the kth powers of the first n positive integers can be expressed as a polynomial of degree k+1 with rational coefficients, the Faulhaber's Formulas:",
        "$1^k + 2^k + ... + n^k = \\sum_{i=1}^n i^k = \\sum_{i=1}^{k+1} a_{i} n^i = a_{1} n + a_{2} n^2 + ... + a_{k} n^k + a_{k+1} n^{k + 1}$,",
        "where ai's are rational coefficients that can be written as reduced fractions pi/qi (if ai = 0, we shall consider qi = 1).",
        "",
        "For example, $1^4 + 2^4 + ... + n^4 = -\\frac 1 {30} n + \\frac 1 3 n^3 + \\frac 1 2 n^4 + \\frac 1 5 n^5.$",
        "",
        "Define D(k) as the value of q1 for the sum of kth powers (i.e. the denominator of the reduced fraction a1).",
        "Define F(m) as the mth value of k ≥ 1 for which D(k) = 20010.",
        "You are given D(4) = 30 (since a1 = -1/30), D(308) = 20010, F(1) = 308, F(10) = 96404.",
        "",
        "Find F(105)."
      ]
    },
    {
      "id": "5900fee458d9425c70af4f74",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 546: The Floor's Revenge",
      "tests": [
        "assert.strictEqual(euler546(), TODO: MISSING ANSWER, 'message: <code>euler546()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler546() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler546();"
      ],
      "description": [
        "Define fk(n) = $\\sum_{i=0}^{n}$ fk($\\lfloor\\frac{i}{k}\\rfloor$) where fk(0) = 1 and $\\lfloor x \\rfloor$ denotes the floor function.",
        "",
        "For example, f5(10) = 18, f7(100) = 1003, and f2(103) = 264830889564.",
        "",
        "Find $(\\sum_{k=2}^{10}$ fk(1014)$)$ mod (109+7)."
      ]
    },
    {
      "id": "5900fee558d9425c70af4f75",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 547: Distance of random points within hollow square laminae",
      "tests": [
        "assert.strictEqual(euler547(), TODO: MISSING ANSWER, 'message: <code>euler547()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler547() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler547();"
      ],
      "description": [
        "Assuming that two points are chosen randomly (with uniform distribution) within a rectangle, it is possible to determine the expected value of the distance between these two points.",
        "",
        "For example, the expected distance between two random points in a unit square is about 0.521405, while the expected distance between two random points in a rectangle with side lengths 2 and 3 is about 1.317067.",
        "",
        "Now we define a hollow square lamina of size n to be an integer sized square with side length n ≥ 3 consisting of n2 unit squares from which a rectangle consisting of x × y unit squares (1 ≤ x,y ≤ n - 2) within the original square has been removed.",
        "",
        "For n = 3 there exists only one hollow square lamina:",
        "",
        "",
        "",
        "For n = 4 you can find 9 distinct hollow square laminae, allowing shapes to reappear in rotated or mirrored form:",
        "",
        "",
        "",
        "Let S(n) be the sum of the expected distance between two points chosen randomly within each of the possible hollow square laminae of size n. The two points have to lie within the area left after removing the inner rectangle, i.e. the gray-colored areas in the illustrations above.",
        "",
        "For example, S(3) = 1.6514 and S(4) = 19.6564, rounded to four digits after the decimal point.",
        "",
        "Find S(40) rounded to four digits after the decimal point."
      ]
    },
    {
      "id": "5900fee658d9425c70af4f76",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 548: Gozinta Chains",
      "tests": [
        "assert.strictEqual(euler548(), TODO: MISSING ANSWER, 'message: <code>euler548()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler548() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler548();"
      ],
      "description": [
        "A gozinta chain for n is a sequence {1,a,b,...,n} where each element properly divides the next.",
        "There are eight gozinta chains for 12:",
        "{1,12} ,{1,2,12}, {1,2,4,12}, {1,2,6,12}, {1,3,12}, {1,3,6,12}, {1,4,12} and {1,6,12}. ",
        "Let g(n) be the number of gozinta chains for n, so g(12)=8.",
        "g(48)=48 and g(120)=132.",
        "",
        "",
        "Find the sum of the numbers n  not exceeding 1016 for which g(n)=n."
      ]
    },
    {
      "id": "5900fee758d9425c70af4f77",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 549: Divisibility of factorials",
      "tests": [
        "assert.strictEqual(euler549(), TODO: MISSING ANSWER, 'message: <code>euler549()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler549() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler549();"
      ],
      "description": [
        "The smallest number m such that 10 divides m! is m=5.",
        "The smallest number m such that 25 divides m! is m=10.",
        "",
        "Let s(n) be the smallest number m such that n divides m!.",
        "So s(10)=5 and s(25)=10.",
        "Let S(n) be ∑s(i) for 2 ≤ i ≤ n.",
        "S(100)=2012.",
        "",
        "",
        "Find S(108)."
      ]
    },
    {
      "id": "5900fee858d9425c70af4f78",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 550: Divisor game",
      "tests": [
        "assert.strictEqual(euler550(), TODO: MISSING ANSWER, 'message: <code>euler550()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler550() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler550();"
      ],
      "description": [
        "Two players are playing a game. There are k piles of stones.",
        "When it is his turn a player has to choose a pile and replace it by two piles of stones under the following two conditions:",
        "",
        "",
        " Both new piles must have a number of stones more than one and less than the number of stones of the original pile.",
        " The number of stones of each of the new piles must be a divisor of the number of stones of the original pile.",
        "The first player unable to make a valid move loses.",
        "",
        "Let f(n,k) be the number of winning positions for the first player, assuming perfect play, when the game is played with k piles each having between 2 and n stones (inclusively).f(10,5)=40085.",
        "",
        "",
        "Find  f(107,1012).Give your answer modulo 987654321."
      ]
    },
    {
      "id": "5900fee958d9425c70af4f79",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 551: Sum of digits sequence",
      "tests": [
        "assert.strictEqual(euler551(), TODO: MISSING ANSWER, 'message: <code>euler551()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler551() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler551();"
      ],
      "description": [
        "Let a0, a1, a2, ... be an integer sequence defined by:",
        "a0 = 1;",
        "for n ≥ 1, an is the sum of the digits of all preceding terms.",
        "The sequence starts with 1, 1, 2, 4, 8, 16, 23, 28, 38, 49, ...",
        "You are given a106 = 31054319.",
        "Find a1015."
      ]
    },
    {
      "id": "5900feea58d9425c70af4f7a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 552: Chinese leftovers II",
      "tests": [
        "assert.strictEqual(euler552(), TODO: MISSING ANSWER, 'message: <code>euler552()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler552() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler552();"
      ],
      "description": [
        "Let An be the smallest positive integer satisfying  An mod pi = i  for all 1 ≤ i ≤ n, where pi is the",
        "i-th prime.",
        "For example A2 = 5, since this is the smallest positive solution of the system of equations ",
        " A2 mod 2 = 1 ",
        " A2 mod 3 = 2",
        "The system of equations for A3 adds another constraint. That is, A3 is the smallest positive solution of",
        " A3 mod 2 = 1 ",
        " A3 mod 3 = 2",
        " A3 mod 5 = 3",
        "and hence A3 = 23. Similarly, one gets A4 = 53 and A5 = 1523.",
        "",
        "",
        "Let S(n) be the sum of all primes up to n that divide at least one element in the sequence A.",
        "For example, S(50) = 69 = 5 + 23 + 41, since 5 divides A2, 23 divides A3 and 41 divides A10 = 5765999453. No other prime number up to 50 divides an element in A.",
        "",
        "",
        "Find S(300000)."
      ]
    },
    {
      "id": "5900feeb58d9425c70af4f7b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 553: Power sets of power sets",
      "tests": [
        "assert.strictEqual(euler553(), TODO: MISSING ANSWER, 'message: <code>euler553()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler553() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler553();"
      ],
      "description": [
        "Let P(n) be the set of the first n positive integers {1, 2, ..., n}.",
        "Let Q(n) be the set of all the non-empty subsets of P(n).",
        "Let R(n) be the set of all the non-empty subsets of Q(n).",
        "",
        "An element X ∈ R(n) is a non-empty subset of Q(n), so it is itself a set.",
        "From X we can construct a graph as follows:",
        "",
        "Each element Y ∈ X corresponds to a vertex and labeled with Y;",
        "Two vertices Y1 and Y2 are connected if Y1 ∩ Y2 ≠ ∅.",
        "For example, X = {{1}, {1,2,3}, {3}, {5,6}, {6,7}} results in the following graph:",
        "",
        "",
        "",
        "This graph has two connected components.",
        "",
        "Let C(n,k) be the number of elements of R(n) that have exactly k connected components in their graph.",
        "You are given C(2,1) = 6, C(3,1) = 111, C(4,2) = 486, C(100,10) mod 1 000 000 007 = 728209718.",
        "",
        "Find C(104,10) mod 1 000 000 007."
      ]
    },
    {
      "id": "5900feec58d9425c70af4f7c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 554: Centaurs on a chess board",
      "tests": [
        "assert.strictEqual(euler554(), TODO: MISSING ANSWER, 'message: <code>euler554()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler554() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler554();"
      ],
      "description": [
        "On a chess board, a centaur moves like a king or a knight. The diagram below shows the valid moves of a centaur (represented by an inverted king) on an 8x8 board.",
        "",
        "",
        "",
        "It can be shown that at most n2 non-attacking centaurs can be placed on a board of size 2n×2n.",
        "Let C(n) be the number of ways to place n2 centaurs on a 2n×2n board so that no centaur attacks another directly.",
        "For example C(1) = 4, C(2) = 25, C(10) = 1477721.",
        "",
        "Let Fi be the ith Fibonacci number defined as F1 = F2 = 1 and Fi = Fi-1 + Fi-2 for i > 2.",
        "",
        "Find $\\displaystyle \\left( \\sum_{i=2}^{90} C(F_i) \\right) \\text{mod } (10^8+7)$."
      ]
    },
    {
      "id": "5900feed58d9425c70af4f7d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 555: McCarthy 91 function",
      "tests": [
        "assert.strictEqual(euler555(), TODO: MISSING ANSWER, 'message: <code>euler555()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler555() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler555();"
      ],
      "description": [
        "The McCarthy 91 function is defined as follows:",
        "$$",
        "M_{91}(n) = ",
        "    \\begin{cases}",
        "        n - 10 & \\text{if } n > 100 \\\\",
        "        M_{91}(M_{91}(n+11)) & \\text{if } 0 \\leq n \\leq 100",
        "    \\end{cases}",
        "$$",
        "",
        "",
        "We can generalize this definition by abstracting away the constants into new variables:",
        "",
        "$$",
        "M_{m,k,s}(n) = ",
        "    \\begin{cases}",
        "        n - s & \\text{if } n > m \\\\",
        "        M_{m,k,s}(M_{m,k,s}(n+k)) & \\text{if } 0 \\leq n \\leq m",
        "    \\end{cases}",
        "$$",
        "",
        "",
        "This way, we have $M_{91} = M_{100,11,10}$.",
        "",
        "",
        "Let $F_{m,k,s}$ be the set of fixed points of $M_{m,k,s}$. That is, ",
        "",
        "$$F_{m,k,s}= \\left\\{ n \\in \\mathbb{N} \\, | \\, M_{m,k,s}(n) = n \\right\\}$$",
        "",
        "",
        "For example, the only fixed point of $M_{91}$ is $n = 91$. In other words, $F_{100,11,10}= \\{91\\}$.",
        " ",
        "",
        "Now, define $SF(m,k,s)$ as the sum of the elements in $F_{m,k,s}$ and let $S(p,m) = \\displaystyle \\sum_{1 \\leq s < k \\leq p}{SF(m,k,s)}$.",
        "",
        "",
        "For example, $S(10, 10) = 225$ and $S(1000, 1000)=208724467$.",
        "",
        "",
        "Find $S(10^6, 10^6)$."
      ]
    },
    {
      "id": "5900feee58d9425c70af4f7e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 556: Squarefree Gaussian Integers",
      "tests": [
        "assert.strictEqual(euler556(), TODO: MISSING ANSWER, 'message: <code>euler556()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler556() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler556();"
      ],
      "description": [
        "A Gaussian integer is a number z = a + bi where a, b are integers and i2 = -1.",
        "Gaussian integers are a subset of the complex numbers, and the integers are the subset of Gaussian integers for which b = 0.",
        "",
        "A Gaussian integer unit is one for which a2 + b2 = 1, i.e. one of 1, i, -1, -i.",
        "Let's define a proper Gaussian integer as one for which a > 0 and b ≥ 0.",
        "",
        "A Gaussian integer z1 = a1 + b1i is said to be divisible by z2 = a2 + b2i if z3 = a3 + b3i = z1/z2 is a Gaussian integer.",
        "$\\frac {z_1} {z_2} = \\frac {a_1 + b_1 i} {a_2 + b_2 i} = \\frac {(a_1 + b_1 i)(a_2 - b_2 i)} {(a_2 + b_2 i)(a_2 - b_2 i)} = \\frac {a_1 a_2 + b_1 b_2} {a_2^2 + b_2^2} + \\frac  {a_2 b_1 - a_1 b_2}  {a_2^2 + b_2^2}i = a_3 + b_3 i$",
        "So, z1 is divisible by z2 if $\\frac {a_1 a_2 + b_1 b_2} {a_2^2 + b_2^2}$ and $\\frac  {a_2 b_1 - a_1 b_2}  {a_2^2 + b_2^2}$ are integers.",
        "For example, 2 is divisible by 1 + i because 2/(1 + i) = 1 - i is a Gaussian integer.",
        "",
        "A Gaussian prime is a Gaussian integer that is divisible only by a unit, itself or itself times a unit.",
        "For example, 1 + 2i is a Gaussian prime, because it is only divisible by 1, i, -1, -i, 1 + 2i, i(1 + 2i) = i - 2, -(1 + 2i) = -1 - 2i and -i(1 + 2i) = 2 - i.",
        "2 is not a Gaussian prime as it is divisible by 1 + i.",
        "",
        "A Gaussian integer can be uniquely factored as the product of a unit and proper Gaussian primes.",
        "For example 2 = -i(1 + i)2 and 1 + 3i = (1 + i)(2 + i).",
        "A Gaussian integer is said to be squarefree if its prime factorization does not contain repeated proper Gaussian primes.",
        "So 2 is not squarefree over the Gaussian integers, but 1 + 3i is.",
        "Units and Gaussian primes are squarefree by definition.",
        "",
        "Let f(n) be the count of proper squarefree Gaussian integers with a2 + b2 ≤ n.",
        "For example f(10) = 7 because 1, 1 + i, 1 + 2i, 1 + 3i = (1 + i)(2 + i), 2 + i, 3 and 3 + i = -i(1 + i)(1 + 2i) are squarefree, while 2 = -i(1 + i)2 and 2 + 2i = -i(1 + i)3 are not.",
        "You are given f(102) = 54, f(104) = 5218 and f(108) = 52126906.",
        "",
        "Find f(1014)."
      ]
    },
    {
      "id": "5900feef58d9425c70af4f7f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 557: Cutting triangles",
      "tests": [
        "assert.strictEqual(euler557(), TODO: MISSING ANSWER, 'message: <code>euler557()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler557() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler557();"
      ],
      "description": [
        "A triangle is cut into four pieces by two straight lines, each starting at one vertex and ending on the opposite edge. This results in forming three smaller triangular pieces, and one quadrilateral.  If the original triangle has an integral area, it is often possible to choose cuts such that all of the four pieces also have integral area.  For example, the diagram below shows a triangle of area 55 that has been cut in this way.",
        "",
        "",
        "",
        "Representing the areas as a, b, c and d, in the example above, the individual areas are a = 22, b = 8, c = 11 and d = 14.  It is also possible to cut a triangle of area 55 such that a = 20, b = 2, c = 24, d = 9.",
        "",
        "Define a triangle cutting quadruple (a, b, c, d) as a valid integral division of a triangle, where a is the area of the triangle between the two cut vertices, d is the area of the quadrilateral and b and c are the areas of the two other triangles, with the restriction that b ≤ c.  The two solutions described above are (22,8,11,14) and (20,2,24,9).  These are the only two possible quadruples that have a total area of 55.",
        "",
        "",
        "Define S(n) as the sum of the area of the uncut triangles represented by all valid quadruples with a+b+c+d ≤ n. For example, S(20) = 259.  ",
        "",
        "",
        "Find S(10000)."
      ]
    },
    {
      "id": "5900fef058d9425c70af4f80",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 558: Irrational base",
      "tests": [
        "assert.strictEqual(euler558(), TODO: MISSING ANSWER, 'message: <code>euler558()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler558() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler558();"
      ],
      "description": [
        "Let r be the real root of the equation x3 = x2 + 1.",
        "Every positive integer can be written as the sum of distinct increasing powers of r.",
        "If we require the number of terms to be finite and the difference between any two exponents to be three or more, then the representation is unique.",
        "For example, 3 = r -10 + r -5 + r -1 + r 2 and 10 = r -10 + r -7 + r 6.",
        "Interestingly, the relation holds for the complex roots of the equation.",
        "",
        "Let w(n) be the number of terms in this unique representation of n. Thus w(3) = 4 and w(10) = 3.",
        "",
        "More formally, for all positive integers n, we have:n = $\\displaystyle \\sum_{k=-\\infty}^{\\infty}$ bk rk",
        "under the conditions that:bk is 0 or 1 for all k;bk + bk+1 + bk+2 ≤ 1 for all k;w(n) = $\\displaystyle \\sum_{k=-\\infty}^{\\infty}$ bk is finite.",
        "",
        "Let S(m) = $\\displaystyle \\sum_{j=1}^{m}$ w(j2).",
        "You are given S(10) = 61 and S(1000) = 19403.",
        "",
        "Find S(5 000 000)."
      ]
    },
    {
      "id": "5900fef158d9425c70af4f81",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 559: Permuted Matrices",
      "tests": [
        "assert.strictEqual(euler559(), TODO: MISSING ANSWER, 'message: <code>euler559()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler559() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler559();"
      ],
      "description": [
        "An ascent of a column j in a matrix occurs if the value of column j is smaller than the value of column j+1 in all rows.",
        "",
        "Let P(k, r, n) be the number of r x n matrices with the following properties:",
        "",
        "The rows are permutations of {1, 2, 3, ... , n}.",
        " Numbering the first column as 1, a column ascent occurs at column j<n if and only if j is not a multiple of k.",
        "",
        "For example, P(1, 2, 3) = 19, P(2, 4, 6) = 65508751 and  P(7, 5, 30) mod 1000000123 = 161858102.",
        "",
        "Let Q(n) =$\\,  \\displaystyle \\sum_{k=1}^n\\,$ P(k, n, n).",
        "For example, Q(5) = 21879393751 and Q(50) mod 1000000123 = 819573537.",
        "",
        "Find Q(50000) mod 1000000123."
      ]
    },
    {
      "id": "5900fef258d9425c70af4f82",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 560: Coprime Nim",
      "tests": [
        "assert.strictEqual(euler560(), TODO: MISSING ANSWER, 'message: <code>euler560()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler560() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler560();"
      ],
      "description": [
        "Coprime Nim is just like ordinary normal play Nim, but the players may only remove a number of stones from a pile  that is coprime with the current size of the pile. Two players remove stones in turn. The player who removes the last stone wins.",
        "",
        "Let L(n, k) be the number of losing starting positions for the first player, assuming perfect play, when the game is played with k piles, each having between 1 and n - 1 stones inclusively.",
        "",
        "For example, L(5, 2) = 6 since the losing initial positions are (1, 1), (2, 2), (2, 4), (3, 3), (4, 2) and (4, 4).",
        "You are also given L(10, 5) = 9964, L(10, 10) = 472400303, L(103, 103) mod 1 000 000 007 = 954021836.",
        "",
        "Find L(107, 107) mod 1 000 000 007"
      ]
    },
    {
      "id": "5900fef358d9425c70af4f83",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 561: Divisor Pairs",
      "tests": [
        "assert.strictEqual(euler561(), TODO: MISSING ANSWER, 'message: <code>euler561()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler561() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler561();"
      ],
      "description": [
        "Let $S(n)$ be the number of pairs $(a,b)$ of distinct divisors of $n$ such that $a$ divides $b$.",
        "For $n=6$ we get the following pairs: $(1,2), (1,3), (1,6),( 2,6)$ and $(3,6)$. So $S(6)=5$.",
        "Let $p_m\\#$ be the product of the first $m$ prime numbers,  so $p_2\\# = 2*3 = 6$.",
        "Let $E(m, n)$ be the highest integer $k$ such that $2^k$ divides $S((p_m\\#)^n)$.",
        "$E(2,1) = 0$ since $2^0$ is the highest power of 2 that divides S(6)=5.",
        "Let $Q(n)=\\sum_{i=1}^{n} E(904961, i)$",
        "$Q(8)=2714886$.",
        "",
        "",
        "Evaluate $Q(10^{12})$."
      ]
    },
    {
      "id": "5900fef458d9425c70af4f84",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 562: Maximal perimeter",
      "tests": [
        "assert.strictEqual(euler562(), TODO: MISSING ANSWER, 'message: <code>euler562()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler562() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler562();"
      ],
      "description": [
        "Construct triangle ABC such that:",
        "Vertices A, B and C are lattice points inside or on the circle of radius r centered at the origin;",
        "the triangle contains no other lattice point inside or on its edges;",
        "the perimeter is maximum.Let R be the circumradius of triangle ABC and T(r) = R/r.",
        "For r = 5, one possible triangle has vertices (-4,-3), (4,2)  and (1,0) with perimeter $\\sqrt{13}+\\sqrt{34}+\\sqrt{89}$ and circumradius R = $\\sqrt {\\frac {19669} 2 }$, so T(5) =$\\sqrt {\\frac {19669} {50} }$.",
        "You are given T(10) ~ 97.26729 and T(100) ~ 9157.64707.",
        "",
        "Find T(107). Give your answer rounded to the nearest integer."
      ]
    },
    {
      "id": "5900fef558d9425c70af4f85",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 563: Robot Welders",
      "tests": [
        "assert.strictEqual(euler563(), TODO: MISSING ANSWER, 'message: <code>euler563()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler563() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler563();"
      ],
      "description": [
        "A company specialises in producing large rectangular metal sheets, starting from unit square metal plates.  The welding is performed by a range of robots of increasing size.  Unfortunately, the programming options of these robots are rather limited.  Each one can only process up to 25 identical rectangles of metal, which they can weld along either edge to produce a larger rectangle.  The only programmable variables are the number of rectangles to be processed (up to and including 25), and whether to weld the long or short edge.",
        "",
        "For example, the first robot could be programmed to weld together 11 raw unit square plates to make a 11×1 strip.  The next could take 10 of these 11×1 strips, and weld them either to make a longer 110×1 strip, or a 11×10 rectangle.  Many, but not all, possible dimensions of  metal sheets can be constructed in this way.",
        "",
        "One regular customer has a particularly unusual order.  He always demands that the finished product should have an exact area, and that the long side must not be more than 10% larger than the short side.  If these requirements can be met in more than one way, in terms of the exact dimensions of the two sides, then he demands that all variants are produced.  For example, if he were to ask for metal sheet of area 889200, then there are three final dimensions that can be produced: 900×988, 912×975 and 936×950.  The target area of 889200 is the smallest area which can be manufactured in three different variants, within the limitations of the robot welders.",
        "",
        "Let M(n) be the minimal area that can be manufactured in exactly n variants with the longer edge not greater than 10% bigger than the shorter edge.  Hence M(3) = 889200.",
        "",
        "Find $ \\sum_{n=2}^{100} M(n)$."
      ]
    },
    {
      "id": "5900fef658d9425c70af4f86",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 564: Maximal polygons",
      "tests": [
        "assert.strictEqual(euler564(), TODO: MISSING ANSWER, 'message: <code>euler564()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler564() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler564();"
      ],
      "description": [
        "A line segment of length $2n-3$ is randomly split into $n$ segments of integer length ($n \\ge 3$). In the sequence given by this split, the segments are then used as consecutive sides of a convex $n$-polygon, formed in such a way that its area is maximal.  All of the $\\binom{2n-4} {n-1}$ possibilities for splitting up the initial line segment occur with the same probability. ",
        "",
        "Let $E(n)$ be the expected value of the area that is obtained by this procedure.",
        "For example, for $n=3$ the only possible split of the line segment of length $3$ results in three line segments with length $1$, that form an equilateral triangle with an area of $\\frac 1 4 \\sqrt{3}$. Therefore $E(3)=0.433013$, rounded to $6$ decimal places.",
        "For $n=4$ you can find $4$ different possible splits, each of which is composed of three line segments with length $1$ and one line segment with length $2$. All of these splits lead to the same maximal quadrilateral with an area of $\\frac 3 4 \\sqrt{3}$, thus $E(4)=1.299038$, rounded to $6$ decimal places.",
        "",
        "Let $S(k)=\\displaystyle \\sum_{n=3}^k E(n)$.",
        "For example, $S(3)=0.433013$, $S(4)=1.732051$, $S(5)=4.604767$ and $S(10)=66.955511$, rounded to $6$ decimal places each.",
        "",
        "Find $S(50)$, rounded to $6$ decimal places."
      ]
    },
    {
      "id": "5900fef758d9425c70af4f87",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 565: Divisibility of sum of divisors",
      "tests": [
        "assert.strictEqual(euler565(), TODO: MISSING ANSWER, 'message: <code>euler565()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler565() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler565();"
      ],
      "description": [
        "Let $\\sigma(n)$ be the sum of the divisors of $n$.",
        "E.g. the divisors of 4 are 1, 2 and 4, so $\\sigma(4)=7$.",
        "",
        "",
        "The numbers $n$ not exceeding 20 such that 7 divides  $\\sigma(n)$ are:  4,12,13 and 20, the sum of these numbers being 49.",
        "",
        "",
        "Let $S(n , d)$ be the sum of the numbers $i$ not exceeding $n$ such that $d$ divides $\\sigma(i)$.",
        "So $S(20 , 7)=49$.",
        "",
        "",
        "",
        "You are given: $S(10^6,2017)=150850429$ and $S(10^9 , 2017)=249652238344557$.",
        "",
        "",
        "Find $S(10^{11} , 2017)$"
      ]
    },
    {
      "id": "5900fef858d9425c70af4f88",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 566: Cake Icing Puzzle",
      "tests": [
        "assert.strictEqual(euler566(), TODO: MISSING ANSWER, 'message: <code>euler566()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler566() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler566();"
      ],
      "description": [
        "Adam plays the following game with his birthday cake.",
        "",
        "He cuts a piece forming a circular sector of 60 degrees and flips the piece upside down, with the icing on the bottom.",
        "He then rotates the cake by 60 degrees counterclockwise, cuts an adjacent 60 degree piece and flips it upside down.",
        "He keeps repeating this, until after a total of twelve steps, all the icing is back on top.",
        "",
        "Amazingly, this works for any piece size, even if the cutting angle is an irrational number: all the icing will be back on top after a finite number of steps.",
        "",
        "Now, Adam tries something different: he alternates cutting pieces of size $x=\\frac{360}{9}$ degrees, $y=\\frac{360}{10}$ degrees and $z=\\frac{360 }{\\sqrt{11}}$ degrees. The first piece he cuts has size x and he flips it. The second has size y and he flips it. The third has size z and he flips it. He repeats this with pieces of size x, y and z in that order until all the icing is back on top, and discovers he needs 60 flips altogether.",
        "",
        "",
        "",
        "Let F(a, b, c) be the minimum number of piece flips needed to get all the icing back on top for pieces of size $x=\\frac{360}{a}$ degrees, $y=\\frac{360}{b}$ degrees and $z=\\frac{360}{\\sqrt{c}}$ degrees.",
        "Let $G(n) = \\sum_{9 \\le a < b < c \\le n} F(a,b,c)$, for integers a, b and c.",
        "",
        "You are given that F(9, 10, 11) = 60, F(10, 14, 16) = 506, F(15, 16, 17) = 785232.",
        "You are also given G(11) = 60, G(14) = 58020 and G(17) = 1269260.",
        "",
        "Find G(53)."
      ]
    },
    {
      "id": "5900fef958d9425c70af4f89",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 567: Reciprocal games I",
      "tests": [
        "assert.strictEqual(euler567(), TODO: MISSING ANSWER, 'message: <code>euler567()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler567() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler567();"
      ],
      "description": [
        "Tom has built a random generator that is connected to a row of $n$ light bulbs. Whenever the random generator is activated each of the $n$ lights is turned on with the probability of $\\frac 1 2$, independently of its former state or the state of the other light bulbs.",
        "",
        "While discussing with his friend Jerry how to use his generator, they invent two different games, they call the reciprocal games:",
        "Both games consist of $n$ turns. Each turn is started by choosing a number $k$ randomly between (and including) $1$ and $n$, with equal probability of $\\frac 1 n$ for each number, while the possible win for that turn is the reciprocal of $k$, that is $\\frac 1 k$.",
        "",
        "In game A, Tom activates his random generator once in each turn. If the number of lights turned on is the same as the previously chosen number $k$, Jerry wins and gets $\\frac 1 k$, otherwise he will receive nothing for that turn. Jerry's expected win after playing the total game A consisting of $n$ turns is called $J_A(n)$. For example $J_A(6)=0.39505208$, rounded to 8 decimal places.",
        "",
        "For each turn in game B, after $k$ has been randomly selected, Tom keeps reactivating his random generator until exactly $k$ lights are turned on. After that Jerry takes over and reactivates the random generator until he, too, has generated a pattern with exactly $k$ lights turned on. If this pattern is identical to Tom's last pattern, Jerry wins and gets $\\frac 1 k$, otherwise he will receive nothing. Jerry's expected win after the total game B consisting of $n$ turns is called $J_B(n)$. For example $J_B(6)=0.43333333$, rounded to 8 decimal places.",
        "",
        "Let $\\displaystyle S(m)=\\sum_{n=1}^m (J_A(n)+J_B(n))$. For example $S(6)=7.58932292$, rounded to 8 decimal places.",
        "",
        "Find S(123456789), rounded to 8 decimal places."
      ]
    },
    {
      "id": "5900fefa58d9425c70af4f8a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 568: Reciprocal games II",
      "tests": [
        "assert.strictEqual(euler568(), TODO: MISSING ANSWER, 'message: <code>euler568()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler568() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler568();"
      ],
      "description": [
        "Tom has built a random generator that is connected to a row of $n$ light bulbs. Whenever the random generator is activated each of the $n$ lights is turned on with the probability of $\\frac 1 2$, independently of its former state or the state of the other light bulbs.",
        "",
        "While discussing with his friend Jerry how to use his generator, they invent two different games, they call the reciprocal games:",
        "Both games consist of $n$ turns. Each turn is started by choosing a number $k$ randomly between (and including) $1$ and $n$, with equal probability of $\\frac 1 n$ for each number, while the possible win for that turn is the reciprocal of $k$, that is $\\frac 1 k$.",
        "",
        "In game A, Tom activates his random generator once in each turn. If the number of lights turned on is the same as the previously chosen number $k$, Jerry wins and gets $\\frac 1 k$, otherwise he will receive nothing for that turn. Jerry's expected win after playing the total game A consisting of $n$ turns is called $J_A(n)$. For example $J_A(6)=0.39505208$, rounded to 8 decimal places.",
        "",
        "For each turn in game B, after $k$ has been randomly selected, Tom keeps reactivating his random generator until exactly $k$ lights are turned on. After that Jerry takes over and reactivates the random generator until he, too, has generated a pattern with exactly $k$ lights turned on. If this pattern is identical to Tom's last pattern, Jerry wins and gets $\\frac 1 k$, otherwise he will receive nothing. Jerry's expected win after the total game B consisting of $n$ turns is called $J_B(n)$. For example $J_B(6)=0.43333333$, rounded to 8 decimal places.",
        "",
        "Let $D(n)=J_B(n)−J_A(n)$. For example, $D(6) = 0.03828125$.",
        "",
        "Find the 7 most significant digits of $D(123456789)$ after removing all leading zeros.",
        "(If, for example, we had asked for the 7 most significant digits of $D(6)$, the answer would have been 3828125.)"
      ]
    },
    {
      "id": "5900fefb58d9425c70af4f8b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 569: Prime Mountain Range",
      "tests": [
        "assert.strictEqual(euler569(), TODO: MISSING ANSWER, 'message: <code>euler569()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler569() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler569();"
      ],
      "description": [
        "A mountain range consists of a line of mountains with slopes of exactly 45°, and heights governed by the prime numbers, pn. The up-slope of the kth mountain is of height p2k−1, and the downslope is p2k. The first few foot-hills of this range are illustrated below.",
        "",
        "",
        "",
        "",
        "Tenzing sets out to climb each one in turn, starting from the lowest. At the top of each peak, he looks back and counts how many of the previous peaks he can see. In the example above, the eye-line from the third mountain is drawn in red, showing that he can only see the peak of the second mountain from this viewpoint. Similarly, from the 9th mountain, he can see three peaks, those of the 5th, 7th and 8th mountain.",
        "",
        "Let P(k) be the number of peaks that are visible looking back from the kth mountain.  Hence P(3)=1 and P(9)=3.",
        "Also $\\displaystyle \\sum_{k=1}^{100} P(k) = 227$.",
        "",
        "Find $\\displaystyle \\sum_{k=1}^{2500000} P(k)$."
      ]
    },
    {
      "id": "5900fefc58d9425c70af4f8c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 570: Snowflakes",
      "tests": [
        "assert.strictEqual(euler570(), TODO: MISSING ANSWER, 'message: <code>euler570()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler570() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler570();"
      ],
      "description": [
        "A snowflake of order n is formed by overlaying an equilateral triangle (rotated by 180 degrees) onto each equilateral triangle of the same size in a snowflake of order n-1. A snowflake of order 1 is a single equilateral triangle.",
        "",
        "",
        "",
        " ",
        "",
        "",
        "Some areas of the snowflake are overlaid repeatedly. In the above picture, blue represents the areas that are one layer thick, red two layers thick, yellow three layers thick, and so on. ",
        "",
        "For an order n snowflake, let A(n) be the number of triangles that are one layer thick, and let B(n) be the number of triangles that are three layers thick. Define G(n) = gcd(A(n), B(n)).",
        "",
        "E.g. A(3) = 30, B(3) = 6, G(3)=6",
        "A(11) = 3027630, B(11) = 19862070, G(11) = 30",
        "",
        "Further, G(500) = 186 and  $\\sum_{n=3}^{500}G(n)=5124$",
        "",
        "Find $\\displaystyle \\sum_{n=3}^{10^7}G(n)$."
      ]
    },
    {
      "id": "5900fefd58d9425c70af4f8d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 571: Super Pandigital Numbers",
      "tests": [
        "assert.strictEqual(euler571(), TODO: MISSING ANSWER, 'message: <code>euler571()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler571() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler571();"
      ],
      "description": [
        "A positive number is pandigital in base b if it contains all digits from 0 to b - 1 at least once when written in base b.",
        "",
        "A n-super-pandigital number is a number that is simultaneously pandigital in all bases from 2 to n inclusively.",
        "For example 978 = 11110100102 = 11000203 = 331024 = 124035 is the smallest 5-super-pandigital number.",
        "Similarly, 1093265784 is the smallest 10-super-pandigital number.",
        "The sum of the 10 smallest 10-super-pandigital numbers is 20319792309.",
        "",
        "What is the sum of the 10 smallest 12-super-pandigital numbers?"
      ]
    },
    {
      "id": "5900fefe58d9425c70af4f8e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 572: Idempotent matrices",
      "tests": [
        "assert.strictEqual(euler572(), TODO: MISSING ANSWER, 'message: <code>euler572()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler572() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler572();"
      ],
      "description": [
        "A matrix $M$ is called idempotent if $M^2 = M$.",
        "Let $M$ be a three by three matrix : ",
        "$M=\\begin{pmatrix} ",
        "  a & b & c\\\\ ",
        "  d & e & f\\\\",
        "  g &h &i\\\\",
        "\\end{pmatrix}$.",
        "Let C(n) be the number of  idempotent three by three matrices $M$ with integer elements such that",
        "$ -n \\le a,b,c,d,e,f,g,h,i \\le n$.",
        "",
        "C(1)=164 and C(2)=848.",
        "",
        "",
        "Find C(200)."
      ]
    },
    {
      "id": "5900feff58d9425c70af4f8f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 573: Unfair race",
      "tests": [
        "assert.strictEqual(euler573(), TODO: MISSING ANSWER, 'message: <code>euler573()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler573() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler573();"
      ],
      "description": [
        "$n$ runners in very different training states want to compete in a race. Each one of them is given a different starting number $k$ $(1\\leq k \\leq n)$ according to his (constant) individual racing speed being $v_k=\\frac{k}{n}$.",
        "In order to give the slower runners a chance to win the race, $n$ different starting positions are chosen randomly (with uniform distribution) and independently from each other within the racing track of length $1$. After this, the starting position nearest to the goal is assigned to runner $1$, the next nearest starting position to runner $2$ and so on, until finally the starting position furthest away from the goal is assigned to runner $n$. The winner of the race is the runner who reaches the goal first.",
        "",
        "Interestingly, the expected running time for the winner is $\\frac{1}{2}$, independently of the number of runners. Moreover, while it can be shown that all runners will have the same expected running time of $\\frac{n}{n+1}$, the race is still unfair, since the winning chances may differ significantly for different starting numbers:",
        "",
        "Let $P_{n,k}$ be the probability for runner $k$ to win a race with $n$ runners and $E_n = \\sum_{k=1}^n k P_{n,k}$ be the expected starting number of the winner in that race. It can be shown that, for example,",
        "$P_{3,1}=\\frac{4}{9}$, $P_{3,2}=\\frac{2}{9}$, $P_{3,3}=\\frac{1}{3}$ and $E_3=\\frac{17}{9}$ for a race with $3$ runners. ",
        "You are given that $E_4=2.21875$, $E_5=2.5104$ and $E_{10}=3.66021568$.",
        "",
        "Find $E_{1000000}$ rounded to 4 digits after the decimal point."
      ]
    },
    {
      "id": "5900ff0058d9425c70af4f90",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 574: Verifying Primes",
      "tests": [
        "assert.strictEqual(euler574(), TODO: MISSING ANSWER, 'message: <code>euler574()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler574() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler574();"
      ],
      "description": [
        "Let $q$ be a prime and $A \\ge B >0$ be two integers with the following properties:",
        " $A$ and $B$ have no prime factor in common, that is $\\text{gcd}(A,B)=1$.",
        " The product $AB$ is divisible by every prime less than q.",
        "",
        "It can be shown that, given these conditions, any sum $A+B<q^2$ and any difference $1<A-B<q^2$ has to be a prime number. Thus you can verify that a number $p$ is prime by showing that either $p=A+B<q^2$ or $p=A-B<q^2$ for some $A,B,q$ fulfilling the conditions listed above.",
        "",
        "Let $V(p)$ be the smallest possible value of $A$ in any sum $p=A+B$ and any difference $p=A-B$, that verifies $p$ being prime. Examples:",
        "$V(2)=1$, since $2=1+1< 2^2$. ",
        "$V(37)=22$, since $37=22+15=2 \\cdot 11+3 \\cdot 5< 7^2$ is the associated sum with the smallest possible $A$.",
        "$V(151)=165$ since $151=165-14=3 \\cdot 5 \\cdot 11 - 2 \\cdot 7<13^2$ is the associated difference with the smallest possible $A$. ",
        "",
        "Let $S(n)$ be the sum of $V(p)$ for all primes $p<n$. For example, $S(10)=10$ and $S(200)=7177$.",
        "",
        "Find $S(3800)$."
      ]
    },
    {
      "id": "5900ff0158d9425c70af4f91",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 575: Wandering Robots",
      "tests": [
        "assert.strictEqual(euler575(), TODO: MISSING ANSWER, 'message: <code>euler575()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler575() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler575();"
      ],
      "description": [
        "It was quite an ordinary day when a mysterious alien vessel appeared as if from nowhere. After waiting several hours and receiving no response it is decided to send a team to investigate, of which you are included. Upon entering the vessel you are met by a friendly holographic figure, Katharina, who explains the purpose of the vessel, Eulertopia.",
        "",
        "She claims that Eulertopia is almost older than time itself. Its mission was to take advantage of a combination of incredible computational power and vast periods of time to discover the answer to life, the universe, and everything. Hence the resident cleaning robot, Leonhard, along with his housekeeping responsibilities, was built with a powerful computational matrix to ponder the meaning of life as he wanders through a massive 1000 by 1000 square grid of rooms. She goes on to explain that the rooms are numbered sequentially from left to right, row by row. So, for example, if Leonhard was wandering around a 5 by 5 grid then the rooms would be numbered in the following way.",
        "",
        "",
        "",
        "",
        "Many millenia ago Leonhard reported to Katharina to have found the answer and he is willing to share it with any life form who proves to be worthy of such knowledge.",
        "",
        "Katharina further explains that the designers of Leonhard were given instructions to program him with equal probability of remaining in the same room or travelling to an adjacent room. However, it was not clear to them if this meant (i) an equal probability being split equally between remaining in the room and the number of available routes, or, (ii) an equal probability (50%) of remaining in the same room and then the other 50% was to be split equally between the number of available routes.",
        "",
        "",
        "",
        "",
        "(i) Probability of remaining related to number of exits",
        "(ii) Fixed 50% probability of remaining",
        "",
        "",
        "The records indicate that they decided to flip a coin. Heads would mean that the probability of remaining was dynamically related to the number of exits whereas tails would mean that they program Leonhard with a fixed 50% probability of remaining in a particular room. Unfortunately there is no record of the outcome of the coin, so without further information we would need to assume that there is equal probability of either of the choices being implemented.",
        "",
        "Katharina suggests it should not be too challenging to determine that the probability of finding him in a square numbered room in a 5 by 5 grid after unfathomable periods of time would be approximately 0.177976190476 [12 d.p.].",
        "",
        "In order to prove yourself worthy of visiting the great oracle you must calculate the probability of finding him in a square numbered room in the 1000 by 1000 lair in which he has been wandering.",
        "(Give your answer rounded to 12 decimal places)"
      ]
    },
    {
      "id": "5900ff0258d9425c70af4f92",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 576: Irrational jumps",
      "tests": [
        "assert.strictEqual(euler576(), TODO: MISSING ANSWER, 'message: <code>euler576()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler576() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler576();"
      ],
      "description": [
        "A bouncing point moves counterclockwise along a circle with circumference $1$ with  jumps of constant length $l<1$, until it hits a gap of length $g<1$, that is placed in a distance $d$ counterclockwise from the starting point. The gap does not include the starting point, that is $g+d<1$.",
        "",
        "Let $S(l,g,d)$ be the sum of the length of all jumps, until the point falls into the gap. It can be shown that $S(l,g,d)$ is finite for any irrational jump size $l$, regardless of the values of $g$ and $d$.",
        "Examples: ",
        "$S(\\sqrt{\\frac 1 2}, 0.06, 0.7)=0.7071 \\dots$, $S(\\sqrt{\\frac 1 2}, 0.06, 0.3543)=1.4142 \\dots$ and  $S(\\sqrt{\\frac 1 2}, 0.06, 0.2427)=16.2634 \\dots$.",
        "",
        "Let $M(n, g)$ be the maximum of $ \\sum S(\\sqrt{\\frac 1 p}, g, d)$ for all primes $p \\le n$ and any valid value of $d$.",
        "Examples:",
        "$M(3, 0.06) =29.5425 \\dots$, since $S(\\sqrt{\\frac 1 2}, 0.06, 0.2427)+S(\\sqrt{\\frac 1 3}, 0.06, 0.2427)=29.5425 \\dots$ is the maximal reachable sum for $g=0.06$. ",
        "$M(10, 0.01)=266.9010 \\dots$ ",
        "",
        "Find $M(100, 0.00002)$, rounded to 4 decimal places."
      ]
    },
    {
      "id": "5900ff0358d9425c70af4f93",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 577: Counting hexagons",
      "tests": [
        "assert.strictEqual(euler577(), TODO: MISSING ANSWER, 'message: <code>euler577()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler577() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler577();"
      ],
      "description": [
        "An equilateral triangle with integer side length $n \\ge 3$ is divided into $n^2$ equilateral triangles with side length 1 as shown in the diagram below.",
        "The vertices of these triangles constitute a triangular lattice with $\\frac{(n+1)(n+2)} 2$ lattice points.",
        "Let $H(n)$ be the number of all regular hexagons that can be found by connecting 6 of these points. ",
        "",
        "",
        "",
        "",
        "For example, $H(3)=1$, $H(6)=12$ and $H(20)=966$.",
        "",
        "Find $\\displaystyle \\sum_{n=3}^{12345} H(n)$."
      ]
    },
    {
      "id": "5900ff0458d9425c70af4f94",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 578: Integers with decreasing prime powers",
      "tests": [
        "assert.strictEqual(euler578(), TODO: MISSING ANSWER, 'message: <code>euler578()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler578() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler578();"
      ],
      "description": [
        "Any positive integer can be written as a product of prime powers: p1a1 × p2a2 × ... × pkak,",
        "where pi are distinct prime integers, ai > 0 and pi < pj if i < j.",
        "",
        "A decreasing prime power positive integer is one for which ai ≥ aj if i < j.",
        "For example, 1, 2, 15=3×5, 360=23×32×5 and 1000=23×53 are decreasing prime power integers.",
        "",
        "Let C(n) be the count of decreasing prime power positive integers not exceeding n.",
        "C(100) = 94 since all positive integers not exceeding 100 have decreasing prime powers except 18, 50, 54, 75, 90 and 98.",
        "You are given C(106) = 922052.",
        "",
        "Find C(1013)."
      ]
    },
    {
      "id": "5900ff0558d9425c70af4f95",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 579: Lattice points in lattice cubes",
      "tests": [
        "assert.strictEqual(euler579(), TODO: MISSING ANSWER, 'message: <code>euler579()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler579() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler579();"
      ],
      "description": [
        "A lattice cube is a cube in which all vertices have integer coordinates. Let C(n) be the number of different lattice cubes in which the coordinates of all vertices range between (and including) 0 and n. Two cubes are hereby considered different if any of their vertices have different coordinates.",
        "For example, C(1)=1, C(2)=9, C(4)=100, C(5)=229, C(10)=4469 and C(50)=8154671.",
        "",
        "Different cubes may contain different numbers of lattice points.",
        "",
        "For example, the cube with the vertices",
        "(0, 0, 0), (3, 0, 0), (0, 3, 0), (0, 0, 3), (0, 3, 3), (3, 0, 3), (3, 3, 0), (3, 3, 3) contains 64 lattice points (56 lattice points on the surface including the 8 vertices and 8 points within the cube). ",
        "In contrast, the cube with the vertices",
        "(0, 2, 2), (1, 4, 4), (2, 0, 3), (2, 3, 0), (3, 2, 5), (3, 5, 2), (4, 1, 1), (5, 3, 3) contains only 40 lattice points (20 points on the surface and 20 points within the cube), although both cubes have the same side length 3.",
        "",
        "",
        "Let S(n) be the sum of the lattice points contained in the different lattice cubes in which the coordinates of all vertices range between (and including) 0 and n.",
        "",
        "For example, S(1)=8, S(2)=91, S(4)=1878, S(5)=5832, S(10)=387003 and S(50)=29948928129.",
        "",
        "Find S(5000) mod 109."
      ]
    },
    {
      "id": "5900ff0658d9425c70af4f96",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 580: Squarefree Hilbert numbers",
      "tests": [
        "assert.strictEqual(euler580(), TODO: MISSING ANSWER, 'message: <code>euler580()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler580() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler580();"
      ],
      "description": [
        "A Hilbert number is any positive integer of the form $4k+1$ for integer $k\\geq 0$.  We shall define a squarefree Hilbert number as a Hilbert number which is not divisible by the square of any Hilbert number other than one.  For example, $117$ is a squarefree Hilbert number, equaling $9\\times13$.  However $6237$ is a Hilbert number that is not squarefree in this sense, as it is divisible by $9^2$.  The number $3969$ is also not squarefree, as it is divisible by both $9^2$ and $21^2$.  ",
        "",
        "",
        "There are $2327192$ squarefree Hilbert numbers below $10^7$. ",
        "How many squarefree Hilbert numbers are there below $10^{16}$?"
      ]
    },
    {
      "id": "5900ff0758d9425c70af4f97",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 581: 47-smooth triangular numbers",
      "tests": [
        "assert.strictEqual(euler581(), TODO: MISSING ANSWER, 'message: <code>euler581()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler581() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler581();"
      ],
      "description": [
        "A number is p-smooth if it has no prime factors larger than p.",
        "Let T be the sequence of triangular numbers, ie T(n)=n(n+1)/2.",
        "Find the sum of all indices n such that T(n) is 47-smooth."
      ]
    },
    {
      "id": "5900ff0858d9425c70af4f98",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 582: Nearly isosceles 120 degree triangles",
      "tests": [
        "assert.strictEqual(euler582(), TODO: MISSING ANSWER, 'message: <code>euler582()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler582() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler582();"
      ],
      "description": [
        "Let a, b and c be the sides of an integer sided triangle with one angle of 120 degrees, a≤b≤c and b-a≤100.",
        "Let T(n) be the number of such triangles with c≤n.",
        "T(1000)=235 and T(108)=1245.",
        "Find T(10100)."
      ]
    },
    {
      "id": "5900ff0958d9425c70af4f99",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 583: Heron Envelopes",
      "tests": [
        "assert.strictEqual(euler583(), TODO: MISSING ANSWER, 'message: <code>euler583()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler583() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler583();"
      ],
      "description": [
        "A standard envelope shape is a convex figure consisting of an isosceles triangle (the flap) placed on top of a rectangle.  An example of an envelope with integral sides is shown below.  Note that to form a sensible envelope, the perpendicular height of the flap (BCD) must be smaller than the height of the rectangle (ABDE).  ",
        "",
        "",
        "",
        "",
        "",
        "",
        "In the envelope illustrated, not only are all the sides integral, but also all the diagonals (AC, AD, BD, BE and CE) are integral too. Let us call an envelope with these properties a Heron envelope.",
        "",
        "",
        "",
        "Let S(p) be the sum of the perimeters of all the Heron envelopes with a perimeter less than or equal to p. ",
        "",
        "",
        "You are given that S(104) = 884680.  Find S(107)."
      ]
    },
    {
      "id": "5900ff0a58d9425c70af4f9a",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 584: Birthday Problem Revisited",
      "tests": [
        "assert.strictEqual(euler584(), TODO: MISSING ANSWER, 'message: <code>euler584()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler584() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler584();"
      ],
      "description": [
        "A long long time ago in a galaxy far far away, the Wimwians, inhabitants of planet WimWi, discovered an unmanned drone that had landed on their planet. On examining the drone, they uncovered a device that sought the answer for the so called \"Birthday Problem\". The description of the problem was as follows:",
        "",
        "If people on your planet were to enter a very large room one by one, what will be the expected number of people in the room when you first find 3 people with Birthdays within 1 day from each other.",
        "",
        "The description further instructed them to enter the answer into the device and send the drone into space again. Startled by this turn of events, the Wimwians consulted their best mathematicians. Each year on Wimwi has 10 days and the mathematicians assumed equally likely birthdays and ignored leap years (leap years in Wimwi have 11 days), and found 5.78688636 to be the required answer. As such, the Wimwians entered this answer and sent the drone back into space.",
        "",
        "",
        "After traveling light years away, the drone then landed on planet Joka. The same events ensued except this time, the numbers in the device had changed due to some unknown technical issues. The description read:",
        "",
        "If people on your planet were to enter a very large room one by one, what will be the expected number of people in the room when you first find 3 people with Birthdays within 7 days from each other.",
        "",
        "With a 100-day year on the planet, the Jokars (inhabitants of Joka) found the answer to be 8.48967364 (rounded to 8 decimal places because the device allowed only 8 places after the decimal point) assuming equally likely birthdays. They too entered the answer into the device and launched the drone into space again.",
        "",
        "",
        "This time the drone landed on planet Earth. As before the numbers in the problem description had changed. It read:",
        "",
        "If people on your planet were to enter a very large room one by one, what will be the expected number of people in the room when you first find 4 people with Birthdays within 7 days from each other.",
        "",
        "What would be the answer (rounded to eight places after the decimal point) the people of Earth have to enter into the device for a year with 365 days? Ignore leap years. Also assume that all birthdays are equally likely and independent of each other."
      ]
    },
    {
      "id": "5900ff0b58d9425c70af4f9b",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 585: Nested square roots",
      "tests": [
        "assert.strictEqual(euler585(), TODO: MISSING ANSWER, 'message: <code>euler585()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler585() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler585();"
      ],
      "description": [
        "Consider the term $\\small \\sqrt{x+\\sqrt{y}+\\sqrt{z}}$ that is representing a nested square root. $x$, $y$ and $z$ are positive integers and $y$ and $z$ are not allowed to be perfect squares, so the number below the outer square root is irrational. Still it can be shown that for some combinations of $x$, $y$ and $z$ the given term can be simplified into a sum and/or difference of simple square roots of integers, actually denesting the square roots in the initial expression. ",
        "",
        "Here are some examples of this denesting:",
        "$\\small \\sqrt{3+\\sqrt{2}+\\sqrt{2}}=\\sqrt{2}+\\sqrt{1}=\\sqrt{2}+1$",
        "$\\small \\sqrt{8+\\sqrt{15}+\\sqrt{15}}=\\sqrt{5}+\\sqrt{3}$",
        "$\\small \\sqrt{20+\\sqrt{96}+\\sqrt{12}}=\\sqrt{9}+\\sqrt{6}+\\sqrt{3}-\\sqrt{2}=3+\\sqrt{6}+\\sqrt{3}-\\sqrt{2}$",
        "$\\small \\sqrt{28+\\sqrt{160}+\\sqrt{108}}=\\sqrt{15}+\\sqrt{6}+\\sqrt{5}-\\sqrt{2}$",
        "As you can see the integers used in the denested expression may also be perfect squares resulting in further simplification.",
        "",
        "Let F($n$) be the number of different terms $\\small \\sqrt{x+\\sqrt{y}+\\sqrt{z}}$, that can be denested into the sum and/or difference of a finite number of square roots, given the additional condition that $0<x \\le n$. That is,",
        "$\\small \\displaystyle \\sqrt{x+\\sqrt{y}+\\sqrt{z}}=\\sum_{i=1}^k s_i\\sqrt{a_i}$",
        "with $k$, $x$, $y$, $z$ and all $a_i$ being positive integers, all $s_i =\\pm 1$ and $x\\le n$. Furthermore $y$ and $z$  are not allowed to be perfect squares.",
        "",
        "Nested roots with the same value are not considered different, for example $\\small \\sqrt{7+\\sqrt{3}+\\sqrt{27}}$, $\\small \\sqrt{7+\\sqrt{12}+\\sqrt{12}}$ and $\\small \\sqrt{7+\\sqrt{27}+\\sqrt{3}}$, that can all three be denested into $\\small 2+\\sqrt{3}$, would only be counted once.",
        "",
        "You are given that F(10)=17, F(15)=46, F(20)=86, F(30)=213 and F(100)=2918 and F(5000)=11134074.",
        "Find F(5000000)."
      ]
    },
    {
      "id": "5900ff0c58d9425c70af4f9c",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 586: Binary Quadratic Form",
      "tests": [
        "assert.strictEqual(euler586(), TODO: MISSING ANSWER, 'message: <code>euler586()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler586() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler586();"
      ],
      "description": [
        "The number 209 can be expressed as $a^2 + 3ab + b^2$ in two distinct ways:",
        "",
        "",
        "$ \\qquad 209 = 8^2 + 3\\cdot 8\\cdot 5 + 5^2$ ",
        "$ \\qquad 209 = 13^2 + 3\\cdot13\\cdot 1 + 1^2$",
        "",
        "",
        "Let $f(n,r)$ be the number of integers $k$ not exceeding $n$ that can be expressed as $k=a^2 + 3ab + b^2$, with $a\\gt b>0$ integers, in exactly $r$ different ways.",
        "",
        "",
        "You are given that $f(10^5, 4) = 237$ and $f(10^8, 6) = 59517$.",
        "",
        "",
        "Find $f(10^{15}, 40)$."
      ]
    },
    {
      "id": "5900ff0d58d9425c70af4f9d",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 587: Concave triangle",
      "tests": [
        "assert.strictEqual(euler587(), TODO: MISSING ANSWER, 'message: <code>euler587()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler587() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler587();"
      ],
      "description": [
        "A square is drawn around a circle as shown in the diagram below on the left.",
        "We shall call the blue shaded region the L-section.",
        "A line is drawn from the bottom left of the square to the top right as shown in the diagram on the right.",
        "We shall call the orange shaded region a concave triangle.",
        "",
        "",
        "",
        "",
        "It should be clear that the concave triangle occupies exactly half of the L-section.",
        "",
        "",
        "",
        "Two circles are placed next to each other horizontally, a rectangle is drawn around both circles, and a line is drawn from the bottom left to the top right as shown in the diagram below.",
        "",
        "",
        "",
        "",
        "This time the concave triangle occupies approximately 36.46% of the L-section.",
        "",
        "",
        "If n circles are placed next to each other horizontally, a rectangle is drawn around the n circles, and a line is drawn from the bottom left to the top right, then it can be shown that the least value of n for which the concave triangle occupies less than 10% of the L-section is n = 15.",
        "",
        "",
        "What is the least value of n for which the concave triangle occupies less than 0.1% of the L-section?"
      ]
    },
    {
      "id": "5900ff0e58d9425c70af4f9e",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 588: Quintinomial coefficients",
      "tests": [
        "assert.strictEqual(euler588(), TODO: MISSING ANSWER, 'message: <code>euler588()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler588() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler588();"
      ],
      "description": [
        "The coefficients in the expansion of $(x+1)^k$ are called binomial coefficients.",
        "Analoguously the coefficients in the expansion of $(x^4+x^3+x^2+x+1)^k$ are called quintinomial coefficients. (quintus= Latin for fifth).",
        "",
        "",
        "Consider the expansion of $(x^4+x^3+x^2+x+1)^3$:",
        "$x^{12}+3x^{11}+6x^{10}+10x^9+15x^8+18x^7+19x^6+18x^5+15x^4+10x^3+6x^2+3x+1$",
        "As we can see 7 out of the 13 quintinomial coefficients for $k=3$ are odd.",
        "",
        "",
        "Let $Q(k)$ be the number of odd coefficients in the expansion of $(x^4+x^3+x^2+x+1)^k$.",
        "So $Q(3)=7$.",
        "",
        "",
        "You are given $Q(10)=17$ and $Q(100)=35$.",
        "",
        "Find  $\\sum_{k=1}^{18}Q(10^k) $."
      ]
    },
    {
      "id": "5900ff0f58d9425c70af4f9f",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 589: Poohsticks Marathon",
      "tests": [
        "assert.strictEqual(euler589(), TODO: MISSING ANSWER, 'message: <code>euler589()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler589() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler589();"
      ],
      "description": [
        "Christopher Robin and Pooh Bear love the game of Poohsticks so much that they invented a new version which allows them to play for longer before one of them wins and they have to go home for tea. The game starts as normal with both dropping a stick simultaneously on the upstream side of a bridge. But rather than the game ending when one of the sticks emerges on the downstream side, instead they fish their sticks out of the water, and drop them back in again on the upstream side. The game only ends when one of the sticks emerges from under the bridge ahead of the other one having also 'lapped' the other stick - that is, having made one additional journey under the bridge compared to the other stick.",
        "",
        "",
        "On a particular day when playing this game, the time taken for a stick to travel under the bridge varies between a minimum of 30 seconds, and a maximum of 60 seconds. The time taken to fish a stick out of the water and drop it back in again on the other side is 5 seconds. The current under the bridge has the unusual property that the sticks' journey time is always an integral number of seconds, and it is equally likely to emerge at any of the possible times between 30 and 60 seconds (inclusive). It turns out that under these circumstances, the expected time for playing a single game is 1036.15 seconds (rounded to 2 decimal places). This time is measured from the point of dropping the sticks for the first time, to the point where the winning stick emerges from under the bridge having lapped the other.",
        "",
        "",
        "The stream flows at different rates each day, but maintains the property that the journey time in seconds is equally distributed amongst the integers from a minimum, $n$, to a maximum, $m$, inclusive. Let the expected time of play in seconds be $E(m,n)$. Hence $E(60,30)=1036.15...$",
        "",
        "",
        "Let $S(k)=\\sum_{m=2}^k\\sum_{n=1}^{m-1}E(m,n)$.",
        "",
        "",
        "For example $S(5)=7722.82$ rounded to 2 decimal places.",
        "",
        "",
        "Find $S(100)$ and give your answer rounded to 2 decimal places."
      ]
    },
    {
      "id": "5900ff1058d9425c70af4fa0",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 590: Sets with a given Least Common Multiple",
      "tests": [
        "assert.strictEqual(euler590(), TODO: MISSING ANSWER, 'message: <code>euler590()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler590() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler590();"
      ],
      "description": [
        "Let H(n) denote the number of sets of positive integers such that the least common multiple of the integers in the set equals n.",
        "E.g.:",
        "The integers in the following ten sets all have a least common multiple of 6:",
        "{2,3}, {1,2,3}, {6}, {1,6}, {2,6} ,{1,2,6}, {3,6}, {1,3,6}, {2,3,6} and {1,2,3,6}.",
        "Thus H(6)=10.",
        "",
        "",
        "Let L(n) denote the least common multiple of the numbers 1 through n.",
        "E.g. L(6) is the least common multiple of the numbers 1,2,3,4,5,6 and L(6) equals 60.",
        "",
        "",
        "Let HL(n) denote H(L(n)).",
        "You are given HL(4)=H(12)=44.",
        "",
        "",
        "Find HL(50000). Give your answer modulo 109."
      ]
    },
    {
      "id": "5900ff1158d9425c70af4fa1",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 591: Best Approximations by Quadratic Integers",
      "tests": [
        "assert.strictEqual(euler591(), TODO: MISSING ANSWER, 'message: <code>euler591()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler591() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler591();"
      ],
      "description": [
        "Given a non-square integer $d$, any real $x$ can be approximated arbitrarily close by quadratic integers $a+b\\sqrt{d}$, where $a,b$ are integers. For example, the following inequalities approximate $\\pi$ with precision $10^{-13}$:",
        "$$4375636191520\\sqrt{2}-6188084046055 < \\pi < 721133315582\\sqrt{2}-1019836515172 $$ ",
        "We call $BQA_d(x,n)$ the quadratic integer closest to $x$ with the absolute values of $a,b$ not exceeding $n$. We also define the integral part of a quadratic integer as $I_d(a+b\\sqrt{d}) = a$.",
        "",
        "You are given that:",
        "$BQA_2(\\pi,10) = 6 - 2\\sqrt{2}$",
        "$BQA_5(\\pi,100)=26\\sqrt{5}-55$",
        "$BQA_7(\\pi,10^6)=560323 - 211781\\sqrt{7}$",
        "$I_2(BQA_2(\\pi,10^{13}))=-6188084046055$Find the sum of $|I_d(BQA_d(\\pi,10^{13}))|$ for all  non-square positive integers less than 100."
      ]
    },
    {
      "id": "5900ff1258d9425c70af4fa2",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 592: Factorial trailing digits 2",
      "tests": [
        "assert.strictEqual(euler592(), TODO: MISSING ANSWER, 'message: <code>euler592()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler592() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler592();"
      ],
      "description": [
        "For any N, let f(N) be the last twelve hexadecimal digits before the trailing zeroes in N!.",
        "",
        "For example, the hexadecimal representation of 20! is 21C3677C82B40000,",
        "so f(20) is the digit sequence 21C3677C82B4.",
        "",
        "Find f(20!). Give your answer as twelve hexadecimal digits, using uppercase for the digits A to F."
      ]
    },
    {
      "id": "5900ff1358d9425c70af4fa3",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 593: Fleeting Medians",
      "tests": [
        "assert.strictEqual(euler593(), TODO: MISSING ANSWER, 'message: <code>euler593()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler593() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler593();"
      ],
      "description": [
        "We define two sequences $S = \\{S(1), S(2), ..., S(n)\\}$ and $S_2 = \\{S_2(1), S_2(2), ..., S_2(n)\\}$:",
        "",
        "$S(k) = (p_k)^k$ mod $10007$ where $p_k$ is the $k$th prime number.",
        "",
        "$S_2(k) = S(k) + S(\\lfloor\\frac{k}{10000}\\rfloor + 1)$ where $\\lfloor \\cdot \\rfloor$ denotes the floor function.",
        "",
        "Then let $M(i, j)$ be the median of elements $S_2(i)$ through $S_2(j)$, inclusive. For example, $M(1, 10) = 2021.5$ and $M(10^2, 10^3) = 4715.0$.",
        "",
        "Let $F(n, k) = \\sum_{i=1}^{n-k+1} M(i, i + k - 1)$. For example, $F(100, 10) = 463628.5$ and $F(10^5, 10^4) = 675348207.5$.",
        "",
        "Find $F(10^7, 10^5)$. If the sum is not an integer, use $.5$ to denote a half. Otherwise, use $.0$ instead."
      ]
    },
    {
      "id": "5900ff1458d9425c70af4fa4",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 594: Rhombus Tilings",
      "tests": [
        "assert.strictEqual(euler594(), TODO: MISSING ANSWER, 'message: <code>euler594()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler594() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler594();"
      ],
      "description": [
        "For a polygon $P$, let $t(P)$ be the number of ways in which $P$ can be tiled using rhombi and squares with edge length 1. Distinct rotations and reflections are counted as separate tilings.",
        "",
        "",
        "For example, if $O$ is a regular octagon with edge length 1, then $t(O) = 8$. As it happens, all these 8 tilings are rotations of one another:",
        "",
        "",
        "",
        "",
        "Let $O_{a,b}$ be the equal-angled convex octagon whose edges alternate in length between $a$ and $b$.",
        "",
        "For example, here is $O_{2,1}$, with one of its tilings:",
        "",
        "",
        "",
        "",
        "",
        "You are given that $t(O_{1,1})=8$, $t(O_{2,1})=76$ and $t(O_{3,2})=456572$.",
        "",
        "",
        "Find $t(O_{4,2})$."
      ]
    },
    {
      "id": "5900ff1558d9425c70af4fa5",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 595: Incremental Random Sort",
      "tests": [
        "assert.strictEqual(euler595(), TODO: MISSING ANSWER, 'message: <code>euler595()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler595() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler595();"
      ],
      "description": [
        "A deck of cards numbered from 1 to n is shuffled randomly such that each permutation is equally likely.",
        "",
        "",
        "The cards are to be sorted into ascending order using the following technique:",
        " Look at the initial sequence of cards.  If it is already sorted, then there is no need for further action.  Otherwise, if any subsequences of cards happen to be in the correct place relative to one another (ascending with no gaps), then those subsequences are fixed by attaching the cards together.  For example, with 7 cards initially in the order 4123756, the cards labelled 1, 2 and 3 would be attached together, as would 5 and 6.",
        " The cards are 'shuffled' by being thrown into the air, but note that any correctly sequenced cards remain attached, so their orders are maintained.  The cards (or bundles of attached cards) are then picked up randomly.  You should assume that this randomisation is unbiased, despite the fact that some cards are single, and others are grouped together. ",
        " Repeat steps 1 and 2 until the cards are sorted. ",
        "",
        "   Let S(n) be the expected number of shuffles needed to sort the cards. Since the order is checked before the first shuffle, S(1) = 0. You are given that S(2) = 1, and S(5) = 4213/871.",
        "",
        "",
        "Find S(52), and give your answer rounded to 8 decimal places."
      ]
    },
    {
      "id": "5900ff1658d9425c70af4fa6",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 596: Number of lattice points in a hyperball",
      "tests": [
        "assert.strictEqual(euler596(), TODO: MISSING ANSWER, 'message: <code>euler596()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler596() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler596();"
      ],
      "description": [
        "Let T(r) be the number of integer quadruplets x, y, z, t such that x2 + y2 + z2 + t2 ≤ r2. In other words, T(r) is the number of lattice points in the four-dimensional hyperball of radius r.",
        "",
        "You are given that T(2) = 89, T(5) = 3121, T(100) = 493490641 and T(104) = 49348022079085897.",
        "",
        "Find T(108) mod 1000000007."
      ]
    },
    {
      "id": "5900ff1758d9425c70af4fa7",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 597: Torpids",
      "tests": [
        "assert.strictEqual(euler597(), TODO: MISSING ANSWER, 'message: <code>euler597()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler597() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler597();"
      ],
      "description": [
        "The Torpids are rowing races held annually in Oxford, following some curious rules:",
        "",
        "",
        "A division consists of $n$ boats (typically 13), placed in order based on past performance.",
        "",
        "All boats within a division start at 40 metre intervals along the river, in order with the highest-placed boat starting furthest upstream.",
        "",
        "The boats all start rowing simultaneously, upstream, trying to catch the boat in front while avoiding being caught by boats behind.",
        "",
        "Each boat continues rowing until either it reaches the finish line or it catches up with (\"bumps\") a boat in front.",
        "",
        "The finish line is a distance $L$ metres (the course length, in reality about 1800 metres) upstream from the starting position of the lowest-placed boat. (Because of the staggered starting positions, higher-placed boats row a slightly shorter course than lower-placed boats.)",
        "",
        "When a \"bump\" occurs, the \"bumping\" boat takes no further part in the race. The \"bumped\" boat must continue, however, and may even be \"bumped\" again by boats that started two or more places behind it.",
        "",
        "After the race, boats are assigned new places within the division, based on the bumps that occurred. Specifically, for any boat $A$ that started in a lower place than $B$, then $A$ will be placed higher than $B$ in the new order if and only if one of the following occurred:",
        "   $A$ bumped $B$ directly ",
        "   $A$ bumped another boat that went on to bump $B$ ",
        "   $A$ bumped another boat, that bumped yet another boat, that bumped $B$ ",
        "   etc NOTE: For the purposes of this problem you may disregard the boats' lengths, and assume that a bump occurs precisely when the two boats draw level. (In reality, a bump is awarded as soon as physical contact is made, which usually occurs when there is much less than a full boat length's overlap.)",
        "",
        "",
        "Suppose that, in a particular race, each boat $B_j$ rows at a steady speed $v_j = -$log$X_j$ metres per second, where the $X_j$ are chosen randomly (with uniform distribution) between 0 and 1, independently from one another. These speeds are relative to the riverbank: you may disregard the flow of the river.",
        "",
        "",
        "Let $p(n,L)$ be the probability that the new order is an even permutation of the starting order, when there are $n$ boats in the division and $L$ is the course length.",
        "",
        "",
        "For example, with $n=3$ and $L=160$, labelling the boats as $A$,$B$,$C$ in starting order with $C$ highest, the different possible outcomes of the race are as follows:",
        "",
        " Bumps occurring ",
        "   New order ",
        "   Permutation ",
        "   Probability ",
        "  none ",
        "   $A$, $B$, $C$ ",
        "   even ",
        "   $4/15$ ",
        "  $B$ bumps $C$ ",
        "   $A$, $C$, $B$ ",
        "   odd ",
        "   $8/45$ ",
        "  $A$ bumps $B$ ",
        "   $B$, $A$, $C$ ",
        "   odd ",
        "   $1/3$ ",
        "      $B$ bumps $C$, then $A$ bumps $C$     ",
        "   $C$, $A$, $B$ ",
        "   even ",
        "   $4/27$ ",
        "      $A$ bumps $B$, then $B$ bumps $C$     ",
        "   $C$, $B$, $A$ ",
        "   odd ",
        "   $2/27$ ",
        " ",
        "Therefore, $p(3,160) = 4/15 + 4/27 = 56/135$.",
        "",
        "",
        "You are also given that $p(4,400)=0.5107843137$, rounded to 10 digits after the decimal point.",
        "",
        "",
        "Find $p(13,1800)$ rounded to 10 digits after the decimal point."
      ]
    },
    {
      "id": "5900ff1858d9425c70af4fa8",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 598: Split Divisibilities",
      "tests": [
        "assert.strictEqual(euler598(), TODO: MISSING ANSWER, 'message: <code>euler598()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler598() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler598();"
      ],
      "description": [
        "Consider the number 48.",
        "There are five pairs of integers $a$ and $b$ ($a \\leq b$) such that $a \\times b=48$: (1,48), (2,24), (3,16), (4,12) and (6,8).",
        "It can be seen that both 6 and 8 have 4 divisors.",
        "So of those five pairs one consists of two integers with the same number of divisors.",
        "",
        "In general:",
        "Let $C(n)$ be the number of pairs of positive integers $a \\times b=n$, ($a \\leq b$) such that $a$ and $b$ have the same number of divisors; so $C(48)=1$.",
        "",
        "",
        "You are given $C(10!)=3$: (1680, 2160), (1800, 2016) and (1890,1920). ",
        "Find $C(100!)$"
      ]
    },
    {
      "id": "5900ff1958d9425c70af4fa9",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 599: Distinct Colourings of a Rubik's Cube",
      "tests": [
        "assert.strictEqual(euler599(), TODO: MISSING ANSWER, 'message: <code>euler599()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler599() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler599();"
      ],
      "description": [
        "The well-known Rubik's Cube puzzle has many fascinating mathematical properties. The 2×2×2 variant has 8 cubelets with a total of 24 visible faces, each with a coloured sticker. Successively turning faces will rearrange the cubelets, although not all arrangements of cubelets are reachable without dismantling the puzzle.",
        "",
        "",
        "Suppose that we wish to apply new stickers to a 2×2×2 Rubik's cube in a non-standard colouring. Specifically, we have $n$ different colours available (with an unlimited supply of stickers of each colour), and we place one sticker on each of the 24 faces in any arrangement that we please. We are not required to use all the colours, and if desired the same colour may appear in more than one face of a single cubelet.",
        "",
        "",
        "We say that two such colourings $c_1,c_2$ are essentially distinct if a cube coloured according to $c_1$ cannot be made to match a cube coloured according to $c_2$ by performing mechanically possible Rubik's Cube moves.",
        "",
        "",
        "For example, with two colours available, there are 183 essentially distinct colourings.",
        "",
        "",
        "How many essentially distinct colourings are there with 10 different colours available?"
      ]
    },
    {
      "id": "5900ff1a58d9425c70af4faa",
      "challengeType": 5,
      "type": "bonfire",
      "title": "Problem 600: Integer sided equiangular hexagons",
      "tests": [
        "assert.strictEqual(euler600(), TODO: MISSING ANSWER, 'message: <code>euler600()</code> should return TODO: MISSING ANSWER.');"
      ],
      "solutions": [],
      "translations": {},
      "challengeSeed": [
        "function euler600() {",
        "  // Good luck!",
        "  return true;",
        "}",
        "",
        "euler600();"
      ],
      "description": [
        "Let H(n) be the number of distinct integer sided equiangular convex hexagons with perimeter not exceeding n.",
        "Hexagons are distinct if and only if they are not congruent.",
        "",
        "You are given H(6) = 1, H(12) = 10, H(100) = 31248.",
        "Find H(55106).",
        "",
        "",
        "Equiangular hexagons with perimeter not exceeding 12"
      ]
    }
  ]
}
