学编程Python第52天。做二个练习题。也可以当作一个题。
xxx+yyy+zzz=42 (或33)的整数解,是这样找到的网页链接
1. 以前不明白巨大数字的解是怎么算出来的。其实是我们计算机的搜索活。和ACM题差不多,写个算法,在合理时间内出结果。想招减少计算量。
2. 起手式很简单,方程变形为图一。令d=x-y,s=x+y,得到图二的方程。一个平方数在右,左边zzz+33的因子是d。数学就这些了,后面就是计算机。
3. 选择z来试,从1试到10的16次方,每个因子d逐个算,看结果是不是平方数。利用平方数的性质加速计算。好像不难,编程优化,跑跑跑运气好,就找到了。