最直接的思路直接循环,然后判断这个数是否含有2。但是判断一个数是否含有2有方法很多,比如直接转字符串判断,还有利用数学方法判断。
我试着用写了两种两种方法,直接上图
大家可以去试着运行下。
其他的思路就是分位数去求结果,分别为个位是2,十位是2。。。
这个思路效率我认为是最高的,等有时间试试。
如果用Python求太简单了,一行搞定:
ret=[i for i in range(1,2021) if '2' in str(i)]
用Java思路是一样的,就是把数字转成字符串,然后对字符串做in运算。