Consecutive Pythagoreans and Prime Numbers

 The following problem was proposed to a high school student learning computer science:

 Find all whole positive numbers A, B and C such that:

 


 And C <= some given input INPUT. Let’s assume that INPUT = 1B.

 

Before attempting a complete brute-force approach which would be N^3 (intractable), one can do a bit of arithmetic and cut down the vast space that needs to be searched.

 

Since A and B are consecutive numbers (1), we can represent them as:

A = n-1

B = n

 

This representation will come handy later on. We can also represent C as a function of n, unfortunately the only thing that we know so far is that C will be greater than n, hence let’s represent C this way:

C=n+d

 

For some whole positive number d. If we substitute all this new representation into the original Pythagorean formula, we can then start doing some arithmetic:

 

(n-1)^2 + n^2 = (n+d)^2

n^2-2n+1 + n^2 = n^2+2dn+d^2

n^2 -2n -2dn +1 -d^2 = 0

 

n^2 – (2d+2)n + (1-d^2) = 0

 

Now we have a quadratic equation in n that we can solve as a function of d (taking only the positive value of n):

 

n = (2d + 2 + sqrt(4d^2+8d+4 – 4 + 4d^2))/2

n = (2d + 2 + sqrt(8d^2+8d))/2

n = (2d + 2 + 2sqrt(2d^2+2d))/2

 

n = 1 + d + sqrt(2d^2 + 2d)

 

This expression for n will allow us to just search based on the variable d, instead of searching on 3 variables A, B and C.

 

Now we use the second constraint that C must be a prime number. That means that n+d must be a prime number. Substituting the expression for n, we end up with the following criteria:

 

1 + 2d + sqrt(2d^2 + 2d) must be a prime number

 

Hence, the whole problem gets reduced to the following problem

 

“Find positive integers d such that 1 + 2d + sqrt(2d^2 + 2d) is prime”

 

With that, and using Miller-Rabin for primality testing, we can write a simple routing that would find all such numbers d:

 

public int FindConsecutivePrimePythagoreanNumbers(int maxC)

{

    int count = 0;

    int MAX = maxC;

    for (int d = 1; d <= MAX; d++)

    {

        long val = 2 * (d * d + d);

        double sqrt = Math.Sqrt(val);

        long val_after = (long)sqrt;

 

        if (val == val_after * val_after)

        {

            int n = 1 + d + (int)val_after;

            int a = n - 1;

            int b = n;

            int c = n + d;

 

            if (c <= MAX)

            {

                if (IsPrimeMillerRabin(n + d))

                {

                    Console.WriteLine("{0}^2 + {1}^2 = {2}^2", a, b, c);

                    count++;

                }

            }

            else

            {

                break;

            }

        }

    }

    return count;

}

 

Since Miller-Rabin works in Log(n), the entire procedure works in NLogN, where N is the given input. However, it is much faster than that since the Miller-Rabin check only happens when we find a whole number d, which in reality would mean an execution time much closer to O(N) than O(NLogN). In other words, a quasi-linear solution for the given problem, instead of a cubic solution.

 

Running for INPUT = 1M, we find the following numbers:

 

1.      3^2 + 4^2 = 5^2

2.      20^2 + 21^2 = 29^2

3.      4059^2 + 4060^2 = 5741^2

4.      23660^2 + 23661^2 = 33461^2

5.      131584^2 + 131585^2 = 262657^2

6.      173659^2 + 173660^2 = 307693^2

 

Hence only 6 such Pythagorean numbers are found for C <= 1M.

 

Finally, let’s run for the massive input of 1B. Takes 2min 10sec to finish running, but we end up with a total of 1,087 such Pythagorean numbers. All of them are down below.

 

1.      3^2 + 4^2 = 5^2

2.      20^2 + 21^2 = 29^2

3.      4059^2 + 4060^2 = 5741^2

4.      23660^2 + 23661^2 = 33461^2

5.      131584^2 + 131585^2 = 262657^2

6.      173659^2 + 173660^2 = 307693^2

7.      691276^2 + 691277^2 = 1361387^2

8.      1082539^2 + 1082540^2 = 2119261^2

9.      1181184^2 + 1181185^2 = 2360833^2

10. 1204232^2 + 1204233^2 = 2397481^2

11. 1927191^2 + 1927192^2 = 3814903^2

12. 3057448^2 + 3057449^2 = 6112439^2

13. 3364772^2 + 3364773^2 = 6690797^2

14. 3429871^2 + 3429872^2 = 6839663^2

15. 3435067^2 + 3435068^2 = 6857101^2

16. 4738712^2 + 4738713^2 = 9451193^2

17. 5223251^2 + 5223252^2 = 10444789^2

18. 6173912^2 + 6173913^2 = 12303623^2

19. 6317336^2 + 6317337^2 = 12605753^2

20. 6895428^2 + 6895429^2 = 13777651^2

21. 7026183^2 + 7026184^2 = 14020327^2

22. 8535111^2 + 8535112^2 = 17064743^2

23. 8724843^2 + 8724844^2 = 17415011^2

24. 8866552^2 + 8866553^2 = 17716711^2

25. 9144171^2 + 9144172^2 = 18254179^2

26. 9527688^2 + 9527689^2 = 19051177^2

27. 9875911^2 + 9875912^2 = 19719001^2

28. 10044940^2 + 10044941^2 = 20088533^2

29. 10998415^2 + 10998416^2 = 21979663^2

30. 12504383^2 + 12504384^2 = 24970559^2

31. 13013111^2 + 13013112^2 = 26021719^2

32. 13094536^2 + 13094537^2 = 26171479^2

33. 13133875^2 + 13133876^2 = 26240107^2

34. 13454535^2 + 13454536^2 = 26869849^2

35. 14307303^2 + 14307304^2 = 28570567^2

36. 14303283^2 + 14303284^2 = 28580971^2

37. 14905276^2 + 14905277^2 = 29769413^2

38. 15049551^2 + 15049552^2 = 30056753^2

39. 16096011^2 + 16096012^2 = 32160637^2

40. 17265891^2 + 17265892^2 = 34509403^2

41. 17763375^2 + 17763376^2 = 35491759^2

42. 18089160^2 + 18089161^2 = 36167657^2

43. 18140856^2 + 18140857^2 = 36245543^2

44. 18233808^2 + 18233809^2 = 36465071^2

45. 18393788^2 + 18393789^2 = 36783557^2

46. 18444036^2 + 18444037^2 = 36869683^2

47. 19167275^2 + 19167276^2 = 38326051^2

48. 21478804^2 + 21478805^2 = 42936221^2

49. 22208820^2 + 22208821^2 = 44377789^2

50. 22530748^2 + 22530749^2 = 45029947^2

51. 22920431^2 + 22920432^2 = 45823087^2

52. 23823108^2 + 23823109^2 = 47640013^2

53. 23890199^2 + 23890200^2 = 47751433^2

54. 23987843^2 + 23987844^2 = 47968379^2

55. 25001584^2 + 25001585^2 = 49979663^2

56. 25510248^2 + 25510249^2 = 50995081^2

57. 25822079^2 + 25822080^2 = 51635071^2

58. 26041716^2 + 26041717^2 = 52060669^2

59. 26331387^2 + 26331388^2 = 52653619^2

60. 27316923^2 + 27316924^2 = 54625037^2

61. 27367599^2 + 27367600^2 = 54715439^2

62. 27676752^2 + 27676753^2 = 55323439^2

63. 27747611^2 + 27747612^2 = 55461331^2

64. 27755747^2 + 27755748^2 = 55501403^2

65. 28161916^2 + 28161917^2 = 56294011^2

66. 28944608^2 + 28944609^2 = 57849119^2

67. 29227532^2 + 29227533^2 = 58444501^2

68. 29652440^2 + 29652441^2 = 59278343^2

69. 29709519^2 + 29709520^2 = 59393969^2

70. 29841635^2 + 29841636^2 = 59639387^2

71. 30051984^2 + 30051985^2 = 60084463^2

72. 30070284^2 + 30070285^2 = 60118741^2

73. 30227323^2 + 30227324^2 = 60452531^2

74. 30335779^2 + 30335780^2 = 60625307^2

75. 31879735^2 + 31879736^2 = 63738089^2

76. 32505983^2 + 32505984^2 = 65003647^2

77. 32565095^2 + 32565096^2 = 65089721^2

78. 33429843^2 + 33429844^2 = 66814453^2

79. 33517159^2 + 33517160^2 = 67001927^2

80. 33563168^2 + 33563169^2 = 67118113^2

81. 34201996^2 + 34201997^2 = 68396971^2

82. 35605463^2 + 35605464^2 = 71208887^2

83. 36155095^2 + 36155096^2 = 72299849^2

84. 36384687^2 + 36384688^2 = 72723247^2

85. 36958732^2 + 36958733^2 = 73915691^2

86. 37105391^2 + 37105392^2 = 74201489^2

87. 37263892^2 + 37263893^2 = 74527261^2

88. 37360988^2 + 37360989^2 = 74696933^2

89. 37830008^2 + 37830009^2 = 75643033^2

90. 38055227^2 + 38055228^2 = 76094093^2

91. 38094992^2 + 38094993^2 = 76183279^2

92. 38220432^2 + 38220433^2 = 76419857^2

93. 38779883^2 + 38779884^2 = 77515747^2

94. 38989695^2 + 38989696^2 = 77934721^2

95. 39172568^2 + 39172569^2 = 78340103^2

96. 39244535^2 + 39244536^2 = 78484951^2

97. 40253751^2 + 40253752^2 = 80507369^2

98. 40306655^2 + 40306656^2 = 80591393^2

99. 40460403^2 + 40460404^2 = 80916053^2

100.         40563380^2 + 40563381^2 = 81116611^2

101.         40831239^2 + 40831240^2 = 81622553^2

102.         42441716^2 + 42441717^2 = 84850301^2

103.         42620076^2 + 42620077^2 = 85194763^2

104.         43374696^2 + 43374697^2 = 86708599^2

105.         43442704^2 + 43442705^2 = 86877551^2

106.         44708544^2 + 44708545^2 = 89392447^2

107.         45011403^2 + 45011404^2 = 90005437^2

108.         45055031^2 + 45055032^2 = 90081559^2

109.         46328076^2 + 46328077^2 = 92653013^2

110.         46470599^2 + 46470600^2 = 92938073^2

111.         46947236^2 + 46947237^2 = 93866989^2

112.         47103140^2 + 47103141^2 = 94177043^2

113.         47253988^2 + 47253989^2 = 94479059^2

114.         49023572^2 + 49023573^2 = 98014883^2

115.         49146940^2 + 49146941^2 = 98262341^2

116.         49202131^2 + 49202132^2 = 98368139^2

117.         49419720^2 + 49419721^2 = 98805527^2

118.         49457512^2 + 49457513^2 = 98908279^2

119.         49559219^2 + 49559220^2 = 99116267^2

120.         50345055^2 + 50345056^2 = 100670881^2

121.         50495127^2 + 50495128^2 = 100949897^2

122.         51039136^2 + 51039137^2 = 102031967^2

123.         51073259^2 + 51073260^2 = 102101789^2

124.         51076428^2 + 51076429^2 = 102121237^2

125.         51271647^2 + 51271648^2 = 102525473^2

126.         51474764^2 + 51474765^2 = 102931691^2

127.         51719787^2 + 51719788^2 = 103421027^2

128.         51969755^2 + 51969756^2 = 103926931^2

129.         52178387^2 + 52178388^2 = 104321909^2

130.         52640503^2 + 52640504^2 = 105266647^2

131.         52891552^2 + 52891553^2 = 105767329^2

132.         53721403^2 + 53721404^2 = 107413133^2

133.         53866192^2 + 53866193^2 = 107717807^2

134.         53951595^2 + 53951596^2 = 107866723^2

135.         54277360^2 + 54277361^2 = 108547441^2

136.         54396355^2 + 54396356^2 = 108764347^2

137.         54523155^2 + 54523156^2 = 109015861^2

138.         55175647^2 + 55175648^2 = 110323679^2

139.         55701435^2 + 55701436^2 = 111367667^2

140.         55746595^2 + 55746596^2 = 111477403^2

141.         56427119^2 + 56427120^2 = 112849391^2

142.         57266383^2 + 57266384^2 = 114521167^2

143.         57807892^2 + 57807893^2 = 115590173^2

144.         57813504^2 + 57813505^2 = 115616257^2

145.         58136207^2 + 58136208^2 = 116234737^2

146.         58433343^2 + 58433344^2 = 116828353^2

147.         59666092^2 + 59666093^2 = 119319029^2

148.         61387140^2 + 61387141^2 = 122763853^2

149.         61951528^2 + 61951529^2 = 123886153^2

150.         63328447^2 + 63328448^2 = 126613313^2

151.         63450112^2 + 63450113^2 = 126888961^2

152.         64360444^2 + 64360445^2 = 128692219^2

153.         64874448^2 + 64874449^2 = 129737809^2

154.         65132943^2 + 65132944^2 = 130254577^2

155.         67359711^2 + 67359712^2 = 134704673^2

156.         67719891^2 + 67719892^2 = 135432821^2

157.         67847887^2 + 67847888^2 = 135656881^2

158.         67895879^2 + 67895880^2 = 135775961^2

159.         69186851^2 + 69186852^2 = 138368101^2

160.         69467544^2 + 69467545^2 = 138891847^2

161.         69578980^2 + 69578981^2 = 139122733^2

162.         69837043^2 + 69837044^2 = 139643947^2

163.         69952627^2 + 69952628^2 = 139863467^2

164.         70196836^2 + 70196837^2 = 140359763^2

165.         70208199^2 + 70208200^2 = 140397991^2

166.         71694324^2 + 71694325^2 = 143383939^2

167.         72302979^2 + 72302980^2 = 144586619^2

168.         72532992^2 + 72532993^2 = 145046527^2

169.         74215252^2 + 74215253^2 = 148404829^2

170.         74753183^2 + 74753184^2 = 149467807^2

171.         75536740^2 + 75536741^2 = 151058771^2

172.         75617308^2 + 75617309^2 = 151233883^2

173.         75943152^2 + 75943153^2 = 151872881^2

174.         75971592^2 + 75971593^2 = 151924439^2

175.         76349300^2 + 76349301^2 = 152683523^2

176.         76910680^2 + 76910681^2 = 153789049^2

177.         77142732^2 + 77142733^2 = 154240363^2

178.         77182872^2 + 77182873^2 = 154343353^2

179.         77719267^2 + 77719268^2 = 155399077^2

180.         77760543^2 + 77760544^2 = 155498977^2

181.         78025163^2 + 78025164^2 = 156016573^2

182.         79614680^2 + 79614681^2 = 159183097^2

183.         79731271^2 + 79731272^2 = 159453479^2

184.         79929919^2 + 79929920^2 = 159849023^2

185.         80497204^2 + 80497205^2 = 160986179^2

186.         80591991^2 + 80591992^2 = 161160023^2

187.         80919152^2 + 80919153^2 = 161817871^2

188.         80979531^2 + 80979532^2 = 161934653^2

189.         81260847^2 + 81260848^2 = 162497711^2

190.         82003407^2 + 82003408^2 = 163961167^2

191.         82207616^2 + 82207617^2 = 164397953^2

192.         82371699^2 + 82371700^2 = 164734379^2

193.         83022352^2 + 83022353^2 = 166021777^2

194.         83812672^2 + 83812673^2 = 167618881^2

195.         84624632^2 + 84624633^2 = 169219097^2

196.         84791847^2 + 84791848^2 = 169571321^2

197.         85554372^2 + 85554373^2 = 171086989^2

198.         85604092^2 + 85604093^2 = 171193093^2

199.         85820468^2 + 85820469^2 = 171631171^2

200.         86361899^2 + 86361900^2 = 172696099^2

201.         86433083^2 + 86433084^2 = 172840307^2

202.         86442527^2 + 86442528^2 = 172851169^2

203.         86439327^2 + 86439328^2 = 172876703^2

204.         86535771^2 + 86535772^2 = 173045267^2

205.         87050108^2 + 87050109^2 = 174074491^2

206.         87485120^2 + 87485121^2 = 174935359^2

207.         88479539^2 + 88479540^2 = 176922773^2

208.         88644328^2 + 88644329^2 = 177267977^2

209.         89153416^2 + 89153417^2 = 178298711^2

210.         89404671^2 + 89404672^2 = 178801409^2

211.         89920271^2 + 89920272^2 = 179796623^2

212.         90403007^2 + 90403008^2 = 180803393^2

213.         90705608^2 + 90705609^2 = 181405207^2

214.         90917879^2 + 90917880^2 = 181799209^2

215.         91360316^2 + 91360317^2 = 182713669^2

216.         92371352^2 + 92371353^2 = 184727111^2

217.         93274107^2 + 93274108^2 = 186525389^2

218.         94924083^2 + 94924084^2 = 189836651^2

219.         95522351^2 + 95522352^2 = 191017391^2

220.         95996244^2 + 95996245^2 = 191949917^2

221.         96324079^2 + 96324080^2 = 192614767^2

222.         97045684^2 + 97045685^2 = 194055107^2

223.         97497404^2 + 97497405^2 = 194980283^2

224.         98252579^2 + 98252580^2 = 196495973^2

225.         99233500^2 + 99233501^2 = 198428773^2

226.         99665715^2 + 99665716^2 = 199307413^2

227.         99692004^2 + 99692005^2 = 199373101^2

228.         99868976^2 + 99868977^2 = 199713359^2

229.         100082423^2 + 100082424^2 = 200120873^2

230.         100074291^2 + 100074292^2 = 200131733^2

231.         100378067^2 + 100378068^2 = 200737931^2

232.         100614411^2 + 100614412^2 = 201223549^2

233.         100953451^2 + 100953452^2 = 201861277^2

234.         101095544^2 + 101095545^2 = 202152857^2

235.         102212476^2 + 102212477^2 = 204398203^2

236.         102194783^2 + 102194784^2 = 204387233^2

237.         102317984^2 + 102317985^2 = 204598879^2

238.         102312456^2 + 102312457^2 = 204599081^2

239.         102590763^2 + 102590764^2 = 205175843^2

240.         102616408^2 + 102616409^2 = 205223801^2

241.         102897815^2 + 102897816^2 = 205780361^2

242.         103513651^2 + 103513652^2 = 206991979^2

243.         103795068^2 + 103795069^2 = 207560581^2

244.         103875140^2 + 103875141^2 = 207729677^2

245.         104216935^2 + 104216936^2 = 208408903^2

246.         104354523^2 + 104354524^2 = 208670867^2

247.         104636811^2 + 104636812^2 = 209272573^2

248.         104799200^2 + 104799201^2 = 209592863^2

249.         104839047^2 + 104839048^2 = 209636249^2

250.         105008655^2 + 105008656^2 = 209978767^2

251.         105063987^2 + 105063988^2 = 210093461^2

252.         105146496^2 + 105146497^2 = 210274433^2

253.         105858639^2 + 105858640^2 = 211685839^2

254.         106156012^2 + 106156013^2 = 212311093^2

255.         106251623^2 + 106251624^2 = 212484793^2

256.         106424920^2 + 106424921^2 = 212849543^2

257.         106625436^2 + 106625437^2 = 213240283^2

258.         106627964^2 + 106627965^2 = 213254533^2

259.         106902947^2 + 106902948^2 = 213783013^2

260.         107287096^2 + 107287097^2 = 214562983^2

261.         107725543^2 + 107725544^2 = 215445817^2

262.         107835808^2 + 107835809^2 = 215645279^2

263.         108184999^2 + 108185000^2 = 216335239^2

264.         108421359^2 + 108421360^2 = 216799343^2

265.         109651259^2 + 109651260^2 = 219282803^2

266.         110179780^2 + 110179781^2 = 220348019^2

267.         111487199^2 + 111487200^2 = 222951713^2

268.         111628732^2 + 111628733^2 = 223221563^2

269.         112008548^2 + 112008549^2 = 223984301^2

270.         112461476^2 + 112461477^2 = 224904467^2

271.         113069487^2 + 113069488^2 = 226109743^2

272.         113123472^2 + 113123473^2 = 226238191^2

273.         113219740^2 + 113219741^2 = 226406107^2

274.         113187419^2 + 113187420^2 = 226374163^2

275.         113733991^2 + 113733992^2 = 227440313^2

276.         114194567^2 + 114194568^2 = 228363623^2

277.         114313467^2 + 114313468^2 = 228585011^2

278.         114309244^2 + 114309245^2 = 228595067^2

279.         114457155^2 + 114457156^2 = 228889403^2

280.         114484259^2 + 114484260^2 = 228939419^2

281.         114718936^2 + 114718937^2 = 229402361^2

282.         116440036^2 + 116440037^2 = 232875821^2

283.         116923816^2 + 116923817^2 = 233839159^2

284.         117464292^2 + 117464293^2 = 234908627^2

285.         117501639^2 + 117501640^2 = 234991193^2

286.         117548967^2 + 117548968^2 = 235066759^2

287.         118264056^2 + 118264057^2 = 236486681^2

288.         118677555^2 + 118677556^2 = 237321323^2

289.         118785464^2 + 118785465^2 = 237564199^2

290.         118940391^2 + 118940392^2 = 237850937^2

291.         118943983^2 + 118943984^2 = 237873263^2

292.         120137759^2 + 120137760^2 = 240261601^2

293.         120463939^2 + 120463940^2 = 240900923^2

294.         121343264^2 + 121343265^2 = 242651359^2

295.         122166471^2 + 122166472^2 = 244297817^2

296.         122198767^2 + 122198768^2 = 244387217^2

297.         122865819^2 + 122865820^2 = 245697709^2

298.         123618760^2 + 123618761^2 = 247204073^2

299.         124547227^2 + 124547228^2 = 249068371^2

300.         125360556^2 + 125360557^2 = 250720501^2

301.         126131051^2 + 126131052^2 = 252228253^2

302.         126334031^2 + 126334032^2 = 252633137^2

303.         126383124^2 + 126383125^2 = 252748829^2

304.         127594800^2 + 127594801^2 = 255152719^2

305.         128993216^2 + 128993217^2 = 257970113^2

306.         129436896^2 + 129436897^2 = 258855199^2

307.         129585648^2 + 129585649^2 = 259155343^2

308.         129840459^2 + 129840460^2 = 259635773^2

309.         130274948^2 + 130274949^2 = 260523187^2

310.         130890243^2 + 130890244^2 = 261743099^2

311.         131161020^2 + 131161021^2 = 262317371^2

312.         132350947^2 + 132350948^2 = 264658267^2

313.         132805303^2 + 132805304^2 = 265585559^2

314.         133077808^2 + 133077809^2 = 266127439^2

315.         133705491^2 + 133705492^2 = 267407051^2

316.         135583300^2 + 135583301^2 = 271124467^2

317.         135595848^2 + 135595849^2 = 271156841^2

318.         136095635^2 + 136095636^2 = 272159051^2

319.         136190580^2 + 136190581^2 = 272337661^2

320.         137563164^2 + 137563165^2 = 275090779^2

321.         137995028^2 + 137995029^2 = 275966179^2

322.         138828664^2 + 138828665^2 = 277620377^2

323.         139322072^2 + 139322073^2 = 278626553^2

324.         139966871^2 + 139966872^2 = 279917431^2

325.         141160820^2 + 141160821^2 = 282319363^2

326.         141326708^2 + 141326709^2 = 282620419^2

327.         141609488^2 + 141609489^2 = 283196783^2

328.         141859092^2 + 141859093^2 = 283691747^2

329.         142366743^2 + 142366744^2 = 284730871^2

330.         142389936^2 + 142389937^2 = 284759857^2

331.         142848647^2 + 142848648^2 = 285657241^2

332.         143037027^2 + 143037028^2 = 286030373^2

333.         143629196^2 + 143629197^2 = 287253931^2

334.         143955163^2 + 143955164^2 = 287905133^2

335.         144675491^2 + 144675492^2 = 289308443^2

336.         145067028^2 + 145067029^2 = 290104291^2

337.         146607115^2 + 146607116^2 = 293187197^2

338.         146595312^2 + 146595313^2 = 293181839^2

339.         146857180^2 + 146857181^2 = 293711461^2

340.         147485208^2 + 147485209^2 = 294927929^2

341.         148445423^2 + 148445424^2 = 296857489^2

342.         148743228^2 + 148743229^2 = 297470651^2

343.         149289576^2 + 149289577^2 = 298573687^2

344.         149625235^2 + 149625236^2 = 299248459^2

345.         150455648^2 + 150455649^2 = 300906337^2

346.         150594911^2 + 150594912^2 = 301157537^2

347.         150712091^2 + 150712092^2 = 301402067^2

348.         151189784^2 + 151189785^2 = 302337337^2

349.         151200623^2 + 151200624^2 = 302359279^2

350.         152135219^2 + 152135220^2 = 304252309^2

351.         152183419^2 + 152183420^2 = 304346701^2

352.         152550888^2 + 152550889^2 = 305078281^2

353.         152964180^2 + 152964181^2 = 305914717^2

354.         152994039^2 + 152994040^2 = 305957929^2

355.         154333916^2 + 154333917^2 = 308634523^2

356.         154446891^2 + 154446892^2 = 308884259^2

357.         154825211^2 + 154825212^2 = 309615821^2

358.         154844599^2 + 154844600^2 = 309675671^2

359.         155039888^2 + 155039889^2 = 310052591^2

360.         155243492^2 + 155243493^2 = 310468819^2

361.         155357452^2 + 155357453^2 = 310669867^2

362.         155817888^2 + 155817889^2 = 311596639^2

363.         156051979^2 + 156051980^2 = 312096643^2

364.         158066164^2 + 158066165^2 = 316106627^2

365.         158222860^2 + 158222861^2 = 316431061^2

366.         158264680^2 + 158264681^2 = 316484489^2

367.         158323552^2 + 158323553^2 = 316619423^2

368.         158684496^2 + 158684497^2 = 317363759^2

369.         159014516^2 + 159014517^2 = 317996797^2

370.         159166528^2 + 159166529^2 = 318326719^2

371.         159246915^2 + 159246916^2 = 318489403^2

372.         159506147^2 + 159506148^2 = 318987173^2

373.         159789383^2 + 159789384^2 = 319557671^2

374.         161682524^2 + 161682525^2 = 323353627^2

375.         162640883^2 + 162640884^2 = 325240021^2

376.         162724308^2 + 162724309^2 = 325409501^2

377.         164075839^2 + 164075840^2 = 328126783^2

378.         164335103^2 + 164335104^2 = 328626689^2

379.         165409844^2 + 165409845^2 = 330812861^2

380.         165591267^2 + 165591268^2 = 331159973^2

381.         165720344^2 + 165720345^2 = 331397831^2

382.         166420956^2 + 166420957^2 = 332826469^2

383.         166725527^2 + 166725528^2 = 333450889^2

384.         166763100^2 + 166763101^2 = 333521381^2

385.         166927691^2 + 166927692^2 = 333811139^2

386.         167501880^2 + 167501881^2 = 334977703^2

387.         167707460^2 + 167707461^2 = 335388941^2

388.         167897199^2 + 167897200^2 = 335755247^2

389.         168196623^2 + 168196624^2 = 336367217^2

390.         168358340^2 + 168358341^2 = 336671347^2

391.         168357856^2 + 168357857^2 = 336671201^2

392.         169154143^2 + 169154144^2 = 338297951^2

393.         170211447^2 + 170211448^2 = 340396201^2

394.         170268732^2 + 170268733^2 = 340506949^2

395.         170506224^2 + 170506225^2 = 341008271^2

396.         170563679^2 + 170563680^2 = 341100127^2

397.         171125451^2 + 171125452^2 = 342242627^2

398.         171217171^2 + 171217172^2 = 342402869^2

399.         171780459^2 + 171780460^2 = 343516003^2

400.         172872063^2 + 172872064^2 = 345722497^2

401.         172904668^2 + 172904669^2 = 345764453^2

402.         172905959^2 + 172905960^2 = 345786823^2

403.         172916780^2 + 172916781^2 = 345807221^2

404.         173007275^2 + 173007276^2 = 345976157^2

405.         173083276^2 + 173083277^2 = 346150229^2

406.         173476051^2 + 173476052^2 = 346940299^2

407.         174372471^2 + 174372472^2 = 348707497^2

408.         175411824^2 + 175411825^2 = 350801167^2

409.         176160512^2 + 176160513^2 = 352289023^2

410.         176375319^2 + 176375320^2 = 352713737^2

411.         178965323^2 + 178965324^2 = 357909443^2

412.         179348447^2 + 179348448^2 = 358653473^2

413.         180184252^2 + 180184253^2 = 360327109^2

414.         181174151^2 + 181174152^2 = 362331239^2

415.         181607303^2 + 181607304^2 = 363202457^2

416.         181912440^2 + 181912441^2 = 363810457^2

417.         182540347^2 + 182540348^2 = 365054861^2

418.         182550035^2 + 182550036^2 = 365087179^2

419.         183083583^2 + 183083584^2 = 366142913^2

420.         183424751^2 + 183424752^2 = 366809489^2

421.         183443660^2 + 183443661^2 = 366856043^2

422.         183675752^2 + 183675753^2 = 367339127^2

423.         183797227^2 + 183797228^2 = 367563293^2

424.         183886699^2 + 183886700^2 = 367752547^2

425.         184022936^2 + 184022937^2 = 368007097^2

426.         185206208^2 + 185206209^2 = 370373183^2

427.         185377108^2 + 185377109^2 = 370711459^2

428.         186061495^2 + 186061496^2 = 372104297^2

429.         186353680^2 + 186353681^2 = 372662417^2

430.         186348935^2 + 186348936^2 = 372687463^2

431.         186352216^2 + 186352217^2 = 372704377^2

432.         186517900^2 + 186517901^2 = 372989867^2

433.         186781291^2 + 186781292^2 = 373519459^2

434.         187482128^2 + 187482129^2 = 374925167^2

435.         187874695^2 + 187874696^2 = 375704167^2

436.         187877823^2 + 187877824^2 = 375734719^2

437.         188912519^2 + 188912520^2 = 377794663^2

438.         188940580^2 + 188940581^2 = 377867411^2

439.         189678176^2 + 189678177^2 = 379343969^2

440.         189887052^2 + 189887053^2 = 379738133^2

441.         190150268^2 + 190150269^2 = 380264581^2

442.         190168779^2 + 190168780^2 = 380307133^2

443.         190284924^2 + 190284925^2 = 380561029^2

444.         190360095^2 + 190360096^2 = 380688353^2

445.         190377967^2 + 190377968^2 = 380737391^2

446.         190572100^2 + 190572101^2 = 381106163^2

447.         191025280^2 + 191025281^2 = 382013311^2

448.         191957987^2 + 191957988^2 = 383911259^2

449.         192337139^2 + 192337140^2 = 384659413^2

450.         192549340^2 + 192549341^2 = 385087333^2

451.         192894771^2 + 192894772^2 = 385785707^2

452.         193023735^2 + 193023736^2 = 386043433^2

453.         193084632^2 + 193084633^2 = 386135303^2

454.         193424443^2 + 193424444^2 = 386807923^2

455.         194110864^2 + 194110865^2 = 388199953^2

456.         195732536^2 + 195732537^2 = 391432537^2

457.         196140907^2 + 196140908^2 = 392265373^2

458.         197553031^2 + 197553032^2 = 395102311^2

459.         197892051^2 + 197892052^2 = 395747701^2

460.         198329272^2 + 198329273^2 = 396616487^2

461.         198647003^2 + 198647004^2 = 397267603^2

462.         198667700^2 + 198667701^2 = 397291837^2

463.         198689172^2 + 198689173^2 = 397351837^2

464.         199467203^2 + 199467204^2 = 398916677^2

465.         199671356^2 + 199671357^2 = 399329467^2

466.         199771455^2 + 199771456^2 = 399539519^2

467.         199829828^2 + 199829829^2 = 399625997^2

468.         199855000^2 + 199855001^2 = 399684679^2

469.         199987412^2 + 199987413^2 = 399955421^2

470.         199984923^2 + 199984924^2 = 399966253^2

471.         200110944^2 + 200110945^2 = 400188769^2

472.         200276564^2 + 200276565^2 = 400516771^2

473.         200605152^2 + 200605153^2 = 401178593^2

474.         200719935^2 + 200719936^2 = 401394113^2

475.         201366772^2 + 201366773^2 = 402723709^2

476.         201723207^2 + 201723208^2 = 403409959^2

477.         201928379^2 + 201928380^2 = 403855117^2

478.         202837756^2 + 202837757^2 = 405629701^2

479.         202842979^2 + 202842980^2 = 405644581^2

480.         202914756^2 + 202914757^2 = 405819277^2

481.         203229728^2 + 203229729^2 = 406457377^2

482.         203493843^2 + 203493844^2 = 406970507^2

483.         203740435^2 + 203740436^2 = 407442229^2

484.         204017215^2 + 204017216^2 = 407995967^2

485.         204388479^2 + 204388480^2 = 408774529^2

486.         204423547^2 + 204423548^2 = 408845491^2

487.         205032352^2 + 205032353^2 = 410049953^2

488.         205739076^2 + 205739077^2 = 411475469^2

489.         205868623^2 + 205868624^2 = 411723313^2

490.         205997164^2 + 205997165^2 = 411989323^2

491.         206669671^2 + 206669672^2 = 413298503^2

492.         206792144^2 + 206792145^2 = 413565521^2

493.         207227804^2 + 207227805^2 = 414412763^2

494.         207256448^2 + 207256449^2 = 414489473^2

495.         207352291^2 + 207352292^2 = 414678181^2

496.         207935015^2 + 207935016^2 = 415854599^2

497.         208978667^2 + 208978668^2 = 417941789^2

498.         209071011^2 + 209071012^2 = 418104293^2

499.         209136540^2 + 209136541^2 = 418263077^2

500.         209735680^2 + 209735681^2 = 419450881^2

501.         210633879^2 + 210633880^2 = 421222007^2

502.         210839036^2 + 210839037^2 = 421658117^2

503.         212079283^2 + 212079284^2 = 424152853^2

504.         212231752^2 + 212231753^2 = 424443241^2

505.         212645751^2 + 212645752^2 = 425250391^2

506.         212805211^2 + 212805212^2 = 425578003^2

507.         212872564^2 + 212872565^2 = 425718269^2

508.         213902972^2 + 213902973^2 = 427782011^2

509.         213969211^2 + 213969212^2 = 427921037^2

510.         214801172^2 + 214801173^2 = 429576419^2

511.         214879256^2 + 214879257^2 = 429738041^2

512.         215295663^2 + 215295664^2 = 430583249^2

513.         215725712^2 + 215725713^2 = 431413009^2

514.         215737903^2 + 215737904^2 = 431453777^2

515.         216442732^2 + 216442733^2 = 432854603^2

516.         216741111^2 + 216741112^2 = 433436713^2

517.         216814712^2 + 216814713^2 = 433588327^2

518.         216868575^2 + 216868576^2 = 433702111^2

519.         218218404^2 + 218218405^2 = 436428781^2

520.         218668640^2 + 218668641^2 = 437334113^2

521.         219072655^2 + 219072656^2 = 438106127^2

522.         219487595^2 + 219487596^2 = 438974621^2

523.         219918564^2 + 219918565^2 = 439822291^2

524.         220478396^2 + 220478397^2 = 440943931^2

525.         220603671^2 + 220603672^2 = 441197833^2

526.         220637847^2 + 220637848^2 = 441265271^2

527.         220743155^2 + 220743156^2 = 441486037^2

528.         220793516^2 + 220793517^2 = 441551371^2

529.         221125983^2 + 221125984^2 = 442242209^2

530.         221414448^2 + 221414449^2 = 442814641^2

531.         223087635^2 + 223087636^2 = 446132171^2

532.         223150763^2 + 223150764^2 = 446255197^2

533.         224050956^2 + 224050957^2 = 448074709^2

534.         224909056^2 + 224909057^2 = 449816831^2

535.         225081032^2 + 225081033^2 = 450142697^2

536.         225836912^2 + 225836913^2 = 451629041^2

537.         226079924^2 + 226079925^2 = 452117443^2

538.         226612403^2 + 226612404^2 = 453221099^2

539.         227229664^2 + 227229665^2 = 454458911^2

540.         227462991^2 + 227462992^2 = 454898993^2

541.         227529363^2 + 227529364^2 = 455026613^2

542.         228113007^2 + 228113008^2 = 456206831^2

543.         228166964^2 + 228166965^2 = 456303293^2

544.         228531747^2 + 228531748^2 = 457046171^2

545.         228711348^2 + 228711349^2 = 457418557^2

546.         229147331^2 + 229147332^2 = 458272187^2

547.         229132516^2 + 229132517^2 = 458264621^2

548.         230644867^2 + 230644868^2 = 461250949^2

549.         230741303^2 + 230741304^2 = 461474327^2

550.         231054184^2 + 231054185^2 = 462075511^2

551.         231232512^2 + 231232513^2 = 462443521^2

552.         231566303^2 + 231566304^2 = 463132193^2

553.         232041639^2 + 232041640^2 = 464047481^2

554.         232359899^2 + 232359900^2 = 464715373^2

555.         233173927^2 + 233173928^2 = 466304633^2

556.         233870500^2 + 233870501^2 = 467726573^2

557.         234109720^2 + 234109721^2 = 468189383^2

558.         234719920^2 + 234719921^2 = 469397297^2

559.         234707576^2 + 234707577^2 = 469398119^2

560.         234732308^2 + 234732309^2 = 469446883^2

561.         235201808^2 + 235201809^2 = 470381167^2

562.         235905439^2 + 235905440^2 = 471797663^2

563.         236375340^2 + 236375341^2 = 472722037^2

564.         237099431^2 + 237099432^2 = 474183559^2

565.         237141455^2 + 237141456^2 = 474246833^2

566.         237953599^2 + 237953600^2 = 475899329^2

567.         238068279^2 + 238068280^2 = 476126999^2

568.         239214819^2 + 239214820^2 = 478408283^2

569.         239910115^2 + 239910116^2 = 479787611^2

570.         240048632^2 + 240048633^2 = 480092441^2

571.         240168635^2 + 240168636^2 = 480302861^2

572.         240443471^2 + 240443472^2 = 480867377^2

573.         240743671^2 + 240743672^2 = 481462231^2

574.         240961676^2 + 240961677^2 = 481897301^2

575.         241373472^2 + 241373473^2 = 482702113^2

576.         241446804^2 + 241446805^2 = 482857373^2

577.         241901443^2 + 241901444^2 = 483773819^2

578.         242081900^2 + 242081901^2 = 484157771^2

579.         242107452^2 + 242107453^2 = 484185413^2

580.         242374144^2 + 242374145^2 = 484726273^2

581.         243410524^2 + 243410525^2 = 486810139^2

582.         243564751^2 + 243564752^2 = 487119793^2

583.         243851308^2 + 243851309^2 = 487687819^2

584.         244264963^2 + 244264964^2 = 488501243^2

585.         245129428^2 + 245129429^2 = 490235357^2

586.         245551388^2 + 245551389^2 = 491074651^2

587.         245553912^2 + 245553913^2 = 491079143^2

588.         246037799^2 + 246037800^2 = 492069113^2

589.         246252487^2 + 246252488^2 = 492495193^2

590.         246979236^2 + 246979237^2 = 493928173^2

591.         247346519^2 + 247346520^2 = 494683447^2

592.         248017888^2 + 248017889^2 = 495990241^2

593.         248286792^2 + 248286793^2 = 496573079^2

594.         248440931^2 + 248440932^2 = 496880677^2

595.         249083660^2 + 249083661^2 = 498166741^2

596.         249129680^2 + 249129681^2 = 498243409^2

597.         251716616^2 + 251716617^2 = 503429417^2

598.         251969764^2 + 251969765^2 = 503928787^2

599.         252307108^2 + 252307109^2 = 504587539^2

600.         252768431^2 + 252768432^2 = 505527343^2

601.         252952327^2 + 252952328^2 = 505892839^2

602.         253112827^2 + 253112828^2 = 506225459^2

603.         253338056^2 + 253338057^2 = 506673943^2

604.         254190140^2 + 254190141^2 = 508341061^2

605.         254210947^2 + 254210948^2 = 508399237^2

606.         255147787^2 + 255147788^2 = 510253187^2

607.         255945075^2 + 255945076^2 = 511848107^2

608.         256077271^2 + 256077272^2 = 512147017^2

609.         257722848^2 + 257722849^2 = 515404831^2

610.         259388232^2 + 259388233^2 = 518761879^2

611.         259947367^2 + 259947368^2 = 519881543^2

612.         261127508^2 + 261127509^2 = 522244189^2

613.         262349724^2 + 262349725^2 = 524683301^2

614.         262719663^2 + 262719664^2 = 525407279^2

615.         264828592^2 + 264828593^2 = 529654991^2

616.         266146999^2 + 266147000^2 = 532286057^2

617.         266761975^2 + 266761976^2 = 533518807^2

618.         267382624^2 + 267382625^2 = 534733153^2

619.         267385651^2 + 267385652^2 = 534745963^2

620.         267760191^2 + 267760192^2 = 535483841^2

621.         268034092^2 + 268034093^2 = 536050037^2

622.         268739283^2 + 268739284^2 = 537459317^2

623.         268888007^2 + 268888008^2 = 537730393^2

624.         269334707^2 + 269334708^2 = 538627819^2

625.         269813280^2 + 269813281^2 = 539592737^2

626.         271098243^2 + 271098244^2 = 542185339^2

627.         271140947^2 + 271140948^2 = 542271221^2

628.         271315788^2 + 271315789^2 = 542585579^2

629.         271307044^2 + 271307045^2 = 542588051^2

630.         271326996^2 + 271326997^2 = 542614301^2

631.         271763047^2 + 271763048^2 = 543487559^2

632.         272352055^2 + 272352056^2 = 544659433^2

633.         273506783^2 + 273506784^2 = 546971681^2

634.         274246444^2 + 274246445^2 = 548478859^2

635.         274253532^2 + 274253533^2 = 548487067^2

636.         274820843^2 + 274820844^2 = 549630691^2

637.         274974211^2 + 274974212^2 = 549920251^2

638.         278632427^2 + 278632428^2 = 557238301^2

639.         278935940^2 + 278935941^2 = 557851213^2

640.         279482468^2 + 279482469^2 = 558961069^2

641.         279916595^2 + 279916596^2 = 559795307^2

642.         280401380^2 + 280401381^2 = 560757037^2

643.         280712540^2 + 280712541^2 = 561379099^2

644.         281480892^2 + 281480893^2 = 562936261^2

645.         282163312^2 + 282163313^2 = 564283151^2

646.         283125663^2 + 283125664^2 = 566241889^2

647.         283475275^2 + 283475276^2 = 566914499^2

648.         284516096^2 + 284516097^2 = 568991999^2

649.         284575176^2 + 284575177^2 = 569112343^2

650.         285915888^2 + 285915889^2 = 571831153^2

651.         286530303^2 + 286530304^2 = 573020927^2

652.         287005160^2 + 287005161^2 = 573989879^2

653.         287223783^2 + 287223784^2 = 574444487^2

654.         287672672^2 + 287672673^2 = 575322977^2

655.         288997380^2 + 288997381^2 = 577971917^2

656.         289282496^2 + 289282497^2 = 578527681^2

657.         289269447^2 + 289269448^2 = 578516569^2

658.         290537291^2 + 290537292^2 = 581068739^2

659.         290640952^2 + 290640953^2 = 581269849^2

660.         291309539^2 + 291309540^2 = 582611291^2

661.         291968859^2 + 291968860^2 = 583912211^2

662.         292780083^2 + 292780084^2 = 585544811^2

663.         292877216^2 + 292877217^2 = 585742943^2

664.         292930124^2 + 292930125^2 = 585820181^2

665.         293317936^2 + 293317937^2 = 586634831^2

666.         293508120^2 + 293508121^2 = 586993721^2

667.         293509415^2 + 293509416^2 = 586999033^2

668.         293619351^2 + 293619352^2 = 587224969^2

669.         294295323^2 + 294295324^2 = 588566483^2

670.         294492891^2 + 294492892^2 = 588953747^2

671.         295011191^2 + 295011192^2 = 589989289^2

672.         295501955^2 + 295501956^2 = 590975611^2

673.         295819459^2 + 295819460^2 = 591600571^2

674.         296050108^2 + 296050109^2 = 592075579^2

675.         296249280^2 + 296249281^2 = 592474049^2

676.         296376844^2 + 296376845^2 = 592729387^2

677.         296498884^2 + 296498885^2 = 592957811^2

678.         297968439^2 + 297968440^2 = 595916777^2

679.         298032100^2 + 298032101^2 = 596035373^2

680.         298058631^2 + 298058632^2 = 596074393^2

681.         298264952^2 + 298264953^2 = 596526233^2

682.         298794423^2 + 298794424^2 = 597542551^2

683.         298971747^2 + 298971748^2 = 597924389^2

684.         299395136^2 + 299395137^2 = 598765633^2

685.         299992160^2 + 299992161^2 = 599938657^2

686.         300829192^2 + 300829193^2 = 601616599^2

687.         301562571^2 + 301562572^2 = 603110077^2

688.         301646164^2 + 301646165^2 = 603259997^2

689.         301825024^2 + 301825025^2 = 603620351^2

690.         301828488^2 + 301828489^2 = 603645271^2

691.         301982203^2 + 301982204^2 = 603958477^2

692.         302868640^2 + 302868641^2 = 605726047^2

693.         303072400^2 + 303072401^2 = 606110993^2

694.         303736055^2 + 303736056^2 = 607438889^2

695.         303969099^2 + 303969100^2 = 607914947^2

696.         304880911^2 + 304880912^2 = 609739919^2

697.         305058375^2 + 305058376^2 = 610105049^2

698.         305759107^2 + 305759108^2 = 611499653^2

699.         306740407^2 + 306740408^2 = 613442153^2

700.         307638792^2 + 307638793^2 = 615266089^2

701.         307830971^2 + 307830972^2 = 615625459^2

702.         307970420^2 + 307970421^2 = 615921149^2

703.         308657556^2 + 308657557^2 = 617273443^2

704.         310124004^2 + 310124005^2 = 620207827^2

705.         310336175^2 + 310336176^2 = 620643887^2

706.         311580572^2 + 311580573^2 = 623119397^2

707.         311628643^2 + 311628644^2 = 623250139^2

708.         311847951^2 + 311847952^2 = 623688817^2

709.         312448171^2 + 312448172^2 = 624851363^2

710.         312734368^2 + 312734369^2 = 625466207^2

711.         313953215^2 + 313953216^2 = 627866689^2

712.         314000055^2 + 314000056^2 = 627954583^2

713.         313965768^2 + 313965769^2 = 627922921^2

714.         314071948^2 + 314071949^2 = 628136533^2

715.         314208031^2 + 314208032^2 = 628372193^2

716.         314699079^2 + 314699080^2 = 629380057^2

717.         314738399^2 + 314738400^2 = 629463841^2

718.         315283855^2 + 315283856^2 = 630552847^2

719.         315948480^2 + 315948481^2 = 631866817^2

720.         316023811^2 + 316023812^2 = 632042491^2

721.         316572827^2 + 316572828^2 = 633110701^2

722.         316919639^2 + 316919640^2 = 633810743^2

723.         316972407^2 + 316972408^2 = 633906263^2

724.         317188684^2 + 317188685^2 = 634335253^2

725.         317285971^2 + 317285972^2 = 634548469^2

726.         317416143^2 + 317416144^2 = 634821041^2

727.         317598483^2 + 317598484^2 = 635173579^2

728.         317582491^2 + 317582492^2 = 635160403^2

729.         317877507^2 + 317877508^2 = 635732219^2

730.         318005452^2 + 318005453^2 = 635992213^2

731.         318734052^2 + 318734053^2 = 637448659^2

732.         318830100^2 + 318830101^2 = 637657571^2

733.         320113371^2 + 320113372^2 = 640215187^2

734.         320362888^2 + 320362889^2 = 640707241^2

735.         320525379^2 + 320525380^2 = 641045819^2

736.         321080023^2 + 321080024^2 = 642139831^2

737.         321603400^2 + 321603401^2 = 643185047^2

738.         323764419^2 + 323764420^2 = 647486533^2

739.         323781932^2 + 323781933^2 = 647544203^2

740.         324582443^2 + 324582444^2 = 649134883^2

741.         324672611^2 + 324672612^2 = 649316389^2

742.         324755875^2 + 324755876^2 = 649475557^2

743.         326471000^2 + 326471001^2 = 652920967^2

744.         326637311^2 + 326637312^2 = 653235967^2

745.         327394283^2 + 327394284^2 = 654775267^2

746.         327983379^2 + 327983380^2 = 655927499^2

747.         328062336^2 + 328062337^2 = 656083583^2

748.         328146512^2 + 328146513^2 = 656276783^2

749.         328487683^2 + 328487684^2 = 656948987^2

750.         329399883^2 + 329399884^2 = 658787011^2

751.         329754407^2 + 329754408^2 = 659506937^2

752.         329999567^2 + 329999568^2 = 659998799^2

753.         330554375^2 + 330554376^2 = 661071079^2

754.         330646376^2 + 330646377^2 = 661270921^2

755.         331585128^2 + 331585129^2 = 663133321^2

756.         332322336^2 + 332322337^2 = 664623137^2

757.         332460316^2 + 332460317^2 = 664890277^2

758.         332524248^2 + 332524249^2 = 665012473^2

759.         332537667^2 + 332537668^2 = 665054267^2

760.         334421292^2 + 334421293^2 = 668829067^2

761.         334957900^2 + 334957901^2 = 669888277^2

762.         335238532^2 + 335238533^2 = 670436941^2

763.         335273307^2 + 335273308^2 = 670521619^2

764.         337266444^2 + 337266445^2 = 674511829^2

765.         337788008^2 + 337788009^2 = 675574409^2

766.         338238600^2 + 338238601^2 = 676472233^2

767.         338413508^2 + 338413509^2 = 676795507^2

768.         338973791^2 + 338973792^2 = 677904991^2

769.         339183804^2 + 339183805^2 = 678339643^2

770.         340102063^2 + 340102064^2 = 680183599^2

771.         341241871^2 + 341241872^2 = 682461071^2

772.         342554451^2 + 342554452^2 = 685100021^2

773.         342776432^2 + 342776433^2 = 685538033^2

774.         342872583^2 + 342872584^2 = 685714151^2

775.         343774620^2 + 343774621^2 = 687521243^2

776.         344295740^2 + 344295741^2 = 688583099^2

777.         344641016^2 + 344641017^2 = 689277671^2

778.         345136144^2 + 345136145^2 = 690254993^2

779.         345653219^2 + 345653220^2 = 691276123^2

780.         346012572^2 + 346012573^2 = 691994587^2

781.         346325244^2 + 346325245^2 = 692624123^2

782.         346457344^2 + 346457345^2 = 692910847^2

783.         346884975^2 + 346884976^2 = 693761297^2

784.         347076783^2 + 347076784^2 = 694109231^2

785.         347386368^2 + 347386369^2 = 694767103^2

786.         348380891^2 + 348380892^2 = 696724627^2

787.         348405636^2 + 348405637^2 = 696766387^2

788.         349314776^2 + 349314777^2 = 698604793^2

789.         349561215^2 + 349561216^2 = 699088513^2

790.         349696424^2 + 349696425^2 = 699357641^2

791.         350059679^2 + 350059680^2 = 700091039^2

792.         351722899^2 + 351722900^2 = 703414091^2

793.         353001508^2 + 353001509^2 = 705968531^2

794.         353450051^2 + 353450052^2 = 706868933^2

795.         354102972^2 + 354102973^2 = 708204997^2

796.         354445312^2 + 354445313^2 = 708864001^2

797.         355081123^2 + 355081124^2 = 710143003^2

798.         356085271^2 + 356085272^2 = 712152073^2

799.         356125276^2 + 356125277^2 = 712224283^2

800.         356694767^2 + 356694768^2 = 713354641^2

801.         356695604^2 + 356695605^2 = 713379907^2

802.         357027007^2 + 357027008^2 = 714046273^2

803.         357406167^2 + 357406168^2 = 714779063^2

804.         357542324^2 + 357542325^2 = 715062589^2

805.         357730224^2 + 357730225^2 = 715414577^2

806.         358291887^2 + 358291888^2 = 716551471^2

807.         359593632^2 + 359593633^2 = 719169697^2

808.         360559451^2 + 360559452^2 = 721073939^2

809.         361013691^2 + 361013692^2 = 722018291^2

810.         361037239^2 + 361037240^2 = 722044567^2

811.         361639759^2 + 361639760^2 = 723244337^2

812.         362105992^2 + 362105993^2 = 724183639^2

813.         362366319^2 + 362366320^2 = 724690159^2

814.         362620400^2 + 362620401^2 = 725209487^2

815.         363456112^2 + 363456113^2 = 726877937^2

816.         363709396^2 + 363709397^2 = 727416029^2

817.         364043552^2 + 364043553^2 = 728056031^2

818.         364605816^2 + 364605817^2 = 729199463^2

819.         366021776^2 + 366021777^2 = 732007697^2

820.         366129868^2 + 366129869^2 = 732230293^2

821.         366177075^2 + 366177076^2 = 732314773^2

822.         367001251^2 + 367001252^2 = 733977371^2

823.         367367775^2 + 367367776^2 = 734692447^2

824.         367826127^2 + 367826128^2 = 735639631^2

825.         367991463^2 + 367991464^2 = 735956857^2

826.         368336691^2 + 368336692^2 = 736671893^2

827.         368430452^2 + 368430453^2 = 736825853^2

828.         368453507^2 + 368453508^2 = 736889477^2

829.         368733347^2 + 368733348^2 = 737459941^2

830.         368735847^2 + 368735848^2 = 737466809^2

831.         369028024^2 + 369028025^2 = 738032423^2

832.         370976616^2 + 370976617^2 = 741913993^2

833.         371021387^2 + 371021388^2 = 741999299^2

834.         371073163^2 + 371073164^2 = 742104061^2

835.         371719348^2 + 371719349^2 = 743400509^2

836.         371897491^2 + 371897492^2 = 743793227^2

837.         372045199^2 + 372045200^2 = 744084751^2

838.         372247264^2 + 372247265^2 = 744451297^2

839.         372744083^2 + 372744084^2 = 745482571^2

840.         373203471^2 + 373203472^2 = 746396047^2

841.         374441180^2 + 374441181^2 = 748877413^2

842.         374717664^2 + 374717665^2 = 749395681^2

843.         374871048^2 + 374871049^2 = 749704919^2

844.         375178875^2 + 375178876^2 = 750312883^2

845.         376029972^2 + 376029973^2 = 752044259^2

846.         376676856^2 + 376676857^2 = 753325799^2

847.         377019939^2 + 377019940^2 = 754009957^2

848.         377158179^2 + 377158180^2 = 754301797^2

849.         377286463^2 + 377286464^2 = 754538689^2

850.         378642608^2 + 378642609^2 = 757245233^2

851.         379705436^2 + 379705437^2 = 759375899^2

852.         380140008^2 + 380140009^2 = 760234999^2

853.         381214852^2 + 381214853^2 = 762413747^2

854.         383024696^2 + 383024697^2 = 766022489^2

855.         383470227^2 + 383470228^2 = 766922677^2

856.         383575759^2 + 383575760^2 = 767142479^2

857.         383658191^2 + 383658192^2 = 767315023^2

858.         384402143^2 + 384402144^2 = 768761633^2

859.         384991927^2 + 384991928^2 = 769977449^2

860.         385070035^2 + 385070036^2 = 770135413^2

861.         386031483^2 + 386031484^2 = 772029773^2

862.         386198871^2 + 386198872^2 = 772358857^2

863.         386274192^2 + 386274193^2 = 772504559^2

864.         386837923^2 + 386837924^2 = 773670427^2

865.         387002151^2 + 387002152^2 = 773980423^2

866.         387278587^2 + 387278588^2 = 774517811^2

867.         387720148^2 + 387720149^2 = 775398179^2

868.         387852440^2 + 387852441^2 = 775667897^2

869.         388680052^2 + 388680053^2 = 777347587^2

870.         388681000^2 + 388681001^2 = 777350839^2

871.         389053211^2 + 389053212^2 = 778083373^2

872.         389479396^2 + 389479397^2 = 778918099^2

873.         389953532^2 + 389953533^2 = 779884549^2

874.         390309175^2 + 390309176^2 = 780609001^2

875.         390662072^2 + 390662073^2 = 781303591^2

876.         391025620^2 + 391025621^2 = 782044381^2

877.         391874671^2 + 391874672^2 = 783734767^2

878.         392069512^2 + 392069513^2 = 784126633^2

879.         392125495^2 + 392125496^2 = 784242409^2

880.         392479260^2 + 392479261^2 = 784924507^2

881.         392532775^2 + 392532776^2 = 785038073^2

882.         392634023^2 + 392634024^2 = 785257607^2

883.         393557107^2 + 393557108^2 = 787073621^2

884.         393903671^2 + 393903672^2 = 787766039^2

885.         394216415^2 + 394216416^2 = 788397601^2

886.         394812367^2 + 394812368^2 = 789581647^2

887.         395389231^2 + 395389232^2 = 790772911^2

888.         395897771^2 + 395897772^2 = 791753891^2

889.         396403215^2 + 396403216^2 = 792782449^2

890.         397547588^2 + 397547589^2 = 795078131^2

891.         398301439^2 + 398301440^2 = 796583681^2

892.         399575691^2 + 399575692^2 = 799106563^2

893.         399948020^2 + 399948021^2 = 799850627^2

894.         400901243^2 + 400901244^2 = 801768371^2

895.         401041136^2 + 401041137^2 = 802070671^2

896.         401599160^2 + 401599161^2 = 803187673^2

897.         401862984^2 + 401862985^2 = 803700631^2

898.         401965716^2 + 401965717^2 = 803887261^2

899.         402005616^2 + 402005617^2 = 803995919^2

900.         402197500^2 + 402197501^2 = 804371461^2

901.         402676551^2 + 402676552^2 = 805349927^2

902.         403320224^2 + 403320225^2 = 806600609^2

903.         403672607^2 + 403672608^2 = 807302113^2

904.         406570576^2 + 406570577^2 = 813116113^2

905.         407119791^2 + 407119792^2 = 814228271^2

906.         407479120^2 + 407479121^2 = 814934063^2

907.         407511044^2 + 407511045^2 = 815007437^2

908.         407696972^2 + 407696973^2 = 815377429^2

909.         408085448^2 + 408085449^2 = 816130327^2

910.         408200763^2 + 408200764^2 = 816387469^2

911.         408818344^2 + 408818345^2 = 817610039^2

912.         409326192^2 + 409326193^2 = 818646287^2

913.         410537863^2 + 410537864^2 = 821031833^2

914.         410526340^2 + 410526341^2 = 821029043^2

915.         410630364^2 + 410630365^2 = 821230181^2

916.         412023320^2 + 412023321^2 = 824015303^2

917.         412669972^2 + 412669973^2 = 825325597^2

918.         412894736^2 + 412894737^2 = 825753967^2

919.         413724684^2 + 413724685^2 = 827410219^2

920.         414254176^2 + 414254177^2 = 828495457^2

921.         414291484^2 + 414291485^2 = 828581029^2

922.         417349168^2 + 417349169^2 = 834693809^2

923.         417715651^2 + 417715652^2 = 835408709^2

924.         417941700^2 + 417941701^2 = 835856243^2

925.         418514955^2 + 418514956^2 = 837016963^2

926.         418718960^2 + 418718961^2 = 837434737^2

927.         418793899^2 + 418793900^2 = 837576029^2

928.         418839019^2 + 418839020^2 = 837676573^2

929.         418961816^2 + 418961817^2 = 837921209^2

930.         419539460^2 + 419539461^2 = 839038771^2

931.         419591996^2 + 419591997^2 = 839152709^2

932.         419937215^2 + 419937216^2 = 839863361^2

933.         419956052^2 + 419956053^2 = 839894947^2

934.         420282207^2 + 420282208^2 = 840561313^2

935.         420625604^2 + 420625605^2 = 841237363^2

936.         421128823^2 + 421128824^2 = 842237609^2

937.         421493880^2 + 421493881^2 = 842981273^2

938.         421641740^2 + 421641741^2 = 843275989^2

939.         423062280^2 + 423062281^2 = 846112727^2

940.         423952055^2 + 423952056^2 = 847900567^2

941.         424740739^2 + 424740740^2 = 849455749^2

942.         425197519^2 + 425197520^2 = 850365617^2

943.         425377931^2 + 425377932^2 = 850754557^2

944.         426001595^2 + 426001596^2 = 851969779^2

945.         426945627^2 + 426945628^2 = 853875731^2

946.         427012332^2 + 427012333^2 = 853995211^2

947.         427502244^2 + 427502245^2 = 854986477^2

948.         427693071^2 + 427693072^2 = 855348337^2

949.         429102420^2 + 429102421^2 = 858159011^2

950.         429182276^2 + 429182277^2 = 858348787^2

951.         429750639^2 + 429750640^2 = 859481873^2

952.         430226408^2 + 430226409^2 = 860418551^2

953.         430602147^2 + 430602148^2 = 861190171^2

954.         430911444^2 + 430911445^2 = 861812957^2

955.         431333416^2 + 431333417^2 = 862633033^2

956.         431610180^2 + 431610181^2 = 863191283^2

957.         431751080^2 + 431751081^2 = 863459273^2

958.         432405260^2 + 432405261^2 = 864780331^2

959.         432852500^2 + 432852501^2 = 865692131^2

960.         433183147^2 + 433183148^2 = 866325853^2

961.         433236748^2 + 433236749^2 = 866447317^2

962.         433639795^2 + 433639796^2 = 867256661^2

963.         433743863^2 + 433743864^2 = 867470633^2

964.         433757996^2 + 433757997^2 = 867507083^2

965.         433868856^2 + 433868857^2 = 867723943^2

966.         434615456^2 + 434615457^2 = 869213857^2

967.         434685871^2 + 434685872^2 = 869350609^2

968.         435791460^2 + 435791461^2 = 871575469^2

969.         435969688^2 + 435969689^2 = 871905607^2

970.         436599683^2 + 436599684^2 = 873162373^2

971.         436618904^2 + 436618905^2 = 873230009^2

972.         436804675^2 + 436804676^2 = 873595589^2

973.         436906560^2 + 436906561^2 = 873804353^2

974.         437637003^2 + 437637004^2 = 875268349^2

975.         437721732^2 + 437721733^2 = 875409229^2

976.         438646547^2 + 438646548^2 = 877267253^2

977.         439302164^2 + 439302165^2 = 878598173^2

978.         440085547^2 + 440085548^2 = 880128803^2

979.         441700368^2 + 441700369^2 = 883370129^2

980.         442654063^2 + 442654064^2 = 885292271^2

981.         443949915^2 + 443949916^2 = 887855341^2

982.         444081732^2 + 444081733^2 = 888141811^2

983.         444604964^2 + 444604965^2 = 889200749^2

984.         444834855^2 + 444834856^2 = 889663993^2

985.         444978443^2 + 444978444^2 = 889935491^2

986.         446735128^2 + 446735129^2 = 893442247^2

987.         447829399^2 + 447829400^2 = 895635593^2

988.         448473388^2 + 448473389^2 = 896944523^2

989.         448744204^2 + 448744205^2 = 897445931^2

990.         448763432^2 + 448763433^2 = 897523127^2

991.         449290440^2 + 449290441^2 = 898554857^2

992.         449772075^2 + 449772076^2 = 899533091^2

993.         450016627^2 + 450016628^2 = 900000427^2

994.         450657580^2 + 450657581^2 = 901290613^2

995.         451426012^2 + 451426013^2 = 902827931^2

996.         452410903^2 + 452410904^2 = 904807433^2

997.         452466939^2 + 452466940^2 = 904887859^2

998.         452557579^2 + 452557580^2 = 905075581^2

999.         452541772^2 + 452541773^2 = 905076971^2

1000.     452875163^2 + 452875164^2 = 905740883^2

1001.     453264151^2 + 453264152^2 = 906499849^2

1002.     453487072^2 + 453487073^2 = 906931169^2

1003.     454326111^2 + 454326112^2 = 908625247^2

1004.     454536823^2 + 454536824^2 = 909058729^2

1005.     455061924^2 + 455061925^2 = 910087699^2

1006.     455082379^2 + 455082380^2 = 910122749^2

1007.     456474528^2 + 456474529^2 = 912920993^2

1008.     457166835^2 + 457166836^2 = 914290901^2

1009.     457899484^2 + 457899485^2 = 915772261^2

1010.     458187651^2 + 458187652^2 = 916365691^2

1011.     458947079^2 + 458947080^2 = 917892377^2

1012.     460422807^2 + 460422808^2 = 920821879^2

1013.     460737032^2 + 460737033^2 = 921440041^2

1014.     461191143^2 + 461191144^2 = 922379321^2

1015.     461765787^2 + 461765788^2 = 923494573^2

1016.     461925040^2 + 461925041^2 = 923840719^2

1017.     461994996^2 + 461994997^2 = 923986307^2

1018.     462168803^2 + 462168804^2 = 924321701^2

1019.     462572251^2 + 462572252^2 = 925128557^2

1020.     462987015^2 + 462987016^2 = 925970407^2

1021.     463145736^2 + 463145737^2 = 926283817^2

1022.     463625559^2 + 463625560^2 = 927224521^2

1023.     463734555^2 + 463734556^2 = 927432659^2

1024.     464302228^2 + 464302229^2 = 928566941^2

1025.     464340256^2 + 464340257^2 = 928655137^2

1026.     464673195^2 + 464673196^2 = 929338717^2

1027.     464738855^2 + 464738856^2 = 929442809^2

1028.     464857707^2 + 464857708^2 = 929701987^2

1029.     466313375^2 + 466313376^2 = 932581729^2

1030.     466473627^2 + 466473628^2 = 932940461^2

1031.     466507936^2 + 466507937^2 = 932989601^2

1032.     466577947^2 + 466577948^2 = 933132589^2

1033.     466584684^2 + 466584685^2 = 933153461^2

1034.     467033975^2 + 467033976^2 = 934065751^2

1035.     467686487^2 + 467686488^2 = 935369783^2

1036.     467766980^2 + 467766981^2 = 935503501^2

1037.     468777187^2 + 468777188^2 = 937548197^2

1038.     469732392^2 + 469732393^2 = 939456439^2

1039.     470494347^2 + 470494348^2 = 940982269^2

1040.     471592991^2 + 471592992^2 = 943173151^2

1041.     471947019^2 + 471947020^2 = 943886467^2

1042.     472629416^2 + 472629417^2 = 945233719^2

1043.     474103779^2 + 474103780^2 = 948172453^2

1044.     475254191^2 + 475254192^2 = 950490833^2

1045.     475489120^2 + 475489121^2 = 950949217^2

1046.     476676196^2 + 476676197^2 = 953335379^2

1047.     476868119^2 + 476868120^2 = 953707511^2

1048.     477887740^2 + 477887741^2 = 955732229^2

1049.     478889660^2 + 478889661^2 = 957754939^2

1050.     478952100^2 + 478952101^2 = 957865709^2

1051.     479512835^2 + 479512836^2 = 959001349^2

1052.     480561439^2 + 480561440^2 = 961091809^2

1053.     480668183^2 + 480668184^2 = 961300471^2

1054.     481209515^2 + 481209516^2 = 962383453^2

1055.     483373799^2 + 483373800^2 = 966721849^2

1056.     483618752^2 + 483618753^2 = 967215167^2

1057.     484482180^2 + 484482181^2 = 968919373^2

1058.     484831864^2 + 484831865^2 = 969644647^2

1059.     485304840^2 + 485304841^2 = 970592471^2

1060.     485573307^2 + 485573308^2 = 971100941^2

1061.     485893244^2 + 485893245^2 = 971766139^2

1062.     486069520^2 + 486069521^2 = 972127633^2

1063.     487080592^2 + 487080593^2 = 974118127^2

1064.     487165640^2 + 487165641^2 = 974292503^2

1065.     487905615^2 + 487905616^2 = 975784753^2

1066.     490695411^2 + 490695412^2 = 981361109^2

1067.     491618807^2 + 491618808^2 = 983196457^2

1068.     492450920^2 + 492450921^2 = 984864119^2

1069.     492780516^2 + 492780517^2 = 985524013^2

1070.     492764388^2 + 492764389^2 = 985510957^2

1071.     493005332^2 + 493005333^2 = 985988579^2

1072.     493781700^2 + 493781701^2 = 987531917^2

1073.     494118756^2 + 494118757^2 = 988234579^2

1074.     494311584^2 + 494311585^2 = 988580513^2

1075.     495924215^2 + 495924216^2 = 991829719^2

1076.     496733155^2 + 496733156^2 = 993428827^2

1077.     496752167^2 + 496752168^2 = 993497081^2

1078.     497144371^2 + 497144372^2 = 994257301^2

1079.     497198444^2 + 497198445^2 = 994377803^2

1080.     497217760^2 + 497217761^2 = 994415329^2

1081.     497811528^2 + 497811529^2 = 995600233^2

1082.     498251044^2 + 498251045^2 = 996497261^2

1083.     498682395^2 + 498682396^2 = 997320403^2

1084.     498824703^2 + 498824704^2 = 997624321^2

1085.     499059755^2 + 499059756^2 = 998108381^2

1086.     499715155^2 + 499715156^2 = 999402763^2

1087.     499756576^2 + 499756577^2 = 999501857^2

1087

 

We can also come up with a GAI prompt for this problem and check whether any of the massive LLMs out there can find these 1,087 numbers. Here is the prompt to be used:

 

GAI PROMPT:

“Pythagorean numbers A, B and C are numbers such that A^2 + B^2 = C^2 and A, B and C are all whole positive numbers. Your task is to find special Pythagorean numbers A, B and C such that (1) A and B are consecutive numbers and (2) C is a prime number. Find all such numbers for C <= 1,000,000,000. Print the numbers in the format A^2 + B^2 = C^2 in each line. At the end, output the total number of such Pythagorean numbers found. To validate that your calculations are correct, it is given that for C <= 1,000,000, there are only 6 such special Pythagorean numbers”

 

This is the result (just the count) found by each one of the following models:

1.      Microsoft Copilot:

a.      Produced a Python code which returned only 4 numbers (wrong)

2.      Meta Llama:

a.      No code generated, only the result 62, which is wrong

3.      Google Gemini:

a.      Produced a Python code, which when executed never stopped running

4.      OpenAI ChatGPT:

a.      Produced a Python code, which when executed took about 5min to run and returned the answer 4 (wrong)

5.      Anthropic Claude 3.5:

a.      Produced a Golang code which outputted 4 (wrong). Worked on the prompt to try to optimize it but still no luck, code got stuck and never stopped

 

These models are usually good but for more sophisticated performance improvements needed, they still lag a bit behind. Cheers, ACC.

 

 

 

Comments

Popular posts from this blog

Golang vs. C#: performance characteristics (simple case study)

Claude vs ChatGPT: A Coder's Perspective on LLM Performance

The Power Sum, a recursive problem by HackerRank