1. ist()里面的for,i<=z就好了,因为数据保证A<B<C
2.
`若无解,输出 No!!!`
3. next_permutation()会略过数组的原排列,所以你这样写无法处理输入数据为123:456:789的情况,可以考虑改用do-while或特判
by 杜都督 @ 2024-02-10 22:05:02
当然,对于这一题来说,你也可以选择删掉stop=后面的sqrt(),只选用最大值而不开根,最后效果也是一样的
by 杜都督 @ 2024-02-10 22:10:25
@[杜都督](/user/39279)
thanks
by sqz11111 @ 2024-02-11 11:42:34
@[杜都督](/user/39279)
ac了 蛤铪哈
by sqz11111 @ 2024-02-11 12:05:47
@[sqz11111](/user/995960) 不客气,开根一般是为了质数判断时减少循环次数服务的,但这题并不是质数判断,所以要老老实实除掉所有因数,如果开根的话就会有一半的因数没有被约分导致最终的比例不是最简的
by 杜都督 @ 2024-02-11 13:39:37
@[sqz11111](/user/995960) 当然,你的思路还可以再优化一点,简单一想就能想到,for的i<=a就够了,或者stop取三个数的 ***最小值*** 也可以
by 杜都督 @ 2024-02-11 13:51:30