开始就看到m的范围为1~10^15,大于int的范围(1~2^31-1)那数据类型就应用long int ;求是否有k个3,我们从个位数开始求,之后利用循环不断除以十就能不断将十位数,百位数等变为新个位数(由于m为整数类型,多余的小数会自动清除),求个位数直接计算十的余数即可,当m小于十时即最高位数已被除到最高位,取余计算后就被除以到0结束循环。当个位数为三则sum+1,不为则不加,当sum等于k则输出YES。
开始就看到m的范围为1~10^15,大于int的范围(1~2^31-1)那数据类型就应用long int ;求是否有k个3,我们从个位数开始求,之后利用循环不断除以十就能不断将十位数,百位数等变为新个位数(由于m为整数类型,多余的小数会自动清除),求个位数直接计算十的余数即可,当m小于十时即最高位数已被除到最高位,取余计算后就被除以到0结束循环。当个位数为三则sum+1,不为则不加,当sum等于k则输出YES。