//ProjectEuler/C++/Headers/Problem27.hpp //Matthew Ellison // Created: 09-14-19 //Modified: 09-14-19 //Find the product of the coefficients, |a| < 1000 and |b| <= 1000, for the quadratic expression that produces the maximum number of primes for consecutive values of n, starting with n=0. //Unless otherwise listed all non-standard includes are my own creation and available from https://bibucket.org/Mattrixwv/myClasses /* Copyright (C) 2019 Matthew Ellison This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . */ #ifndef PROBLEM27_HPP #define PROBLEM27_HPP #include #include #include #include "Problem.hpp" class Problem27 : public Problem{ private: int64_t topA; //The A for the most n's generated int64_t topB; //The B for the most n's generated int64_t topN; //The most n's generated std::vector primes; //A list of all primes that could possibly be generated with this formula public: Problem27(); virtual void solve(); virtual std::string getString() const; virtual void reset(); int64_t getTopA() const; int64_t getTopB() const; int64_t getTopN() const; }; /* Results: The greatest number of primes found is 70 It was found with A = -61, B = 971 The product of A and B is -59231 It took 2.076 seconds to solve this problem. */ #endif //PROBLEM27_HPP