public void Test_FindLargestXMinimalSolution() { /* * minimal solutions in x for D ≤ 7, the largest x is obtained when D=5. * */ var sut = new E066DiophantineEquation(); Assert.Equal(5, sut.GetDFromLargestXInMinimumSolution(DMax: 7)); }
public void Test_MinimalSolution() { /* * For example, when D=13, the minimal solution in x is 649^2 – 13×180^2 = 1. * */ var sut = new E066DiophantineEquation(); Assert.Equal(649, sut.GetXInMinimumSolution(D: 13)); Assert.Equal(31, sut.GetXInMinimumSolution(D: 60)); Assert.Equal(1766319049, sut.GetXInMinimumSolution(D: 61)); Assert.Equal(16916040084175685, sut.GetXInMinimumSolution(D: 454)); // 9000987377460935993101449 821 //16421658242965910275055840472270471049 661 }
public void Solution() { /* * Find the value of D ≤ 1000 in minimal solutions of x for which the largest value of x is obtained. */ var sut = new E066DiophantineEquation(); Assert.Equal(661, sut.GetDFromLargestXInMinimumSolution(DMax: 1000)); /* * Congratulations, the answer you gave to problem 66 is correct. * * You are the 16951st person to have solved this problem. * * This problem had a difficulty rating of 25%. The highest difficulty rating you had previously solved was 20% */ }