题解 1821: 蓝桥杯2014年第五届真题-拼接平方数

来看看其他人写的题解吧!要先自己动手做才会有提高哦! 
返回题目 | 我来写题解

筛选

做题记录2022.3.9(ac:100%)

解题思路:两种方向:从a到b的范围内取数,然后分割判断该数是否符合要求,这样会存在一些冗余判断,但实现起来较为简单先生成平方数,然后在所给定的范围内拼接出符合要求的数,完全没有冗余,但考虑情况较多.如:选几个平方数来拼?如何保证不超出范围?怎么避免拼出相同的数?参考代码:a,

python-拼接平方数

解题思路:根据题意,符合条件的数要满足的条件为①一个数要满足是平方数②这个数要能拆分成两部分③拆分成的两部分也要是平方数注意:这里0并不是平方数拿1681举例吧1681是平方数,接下来要进行拆分:1和681,681不是平方数16和81,满足条件。

蓝桥杯2014年第五届真题-拼接平方数-题解(Java代码)

解题思路:1.判断循环数中能否满足,任意拆开,使拆开的两个数都是平方数。2.判断循环数是平方数。只要满足1和2,该循环数就满足可以输出注意事项:要点一如何判断一个数是平方数:首先Math.sqrt()开方,然后取整然后让开方取整得到的数平方如果平方得到的数和开方之前的相等则说明该数是平方数要点二如何判

小白首选,简单易懂

###解题思路:因为数据范围1e6,所有只需要先把1e3内的平方数求出来,然后再检查a~b的每一个数。从最后一位数开始把当前数分割,如果不合法,就从最后两位数开始分割,直到整个数分割完后,还是不合法那就不合法。```cpp#include#definexfirst#defineysecond#defi