回溯法解决

幸运数字

http://www.nowcoder.com/questionTerminal/69682e8bd0654795955c2e478b988f93

include

using namespace std;
int ans = 0;

void backtrack(int num, int begin, int end)
{
if(num > end)
{
return;
}
if(num >= begin)
{
ans++;
}
int num2 = num * 10 + 6;
int num3 = num * 10 + 8;
backtrack(num2, begin, end);
backtrack(num3, begin, end);
}
int main()
{
long begin, end;
long lucky1 = 6, lucky2 = 8;
cin >> begin >> end;
if(begin > end)
{
cout << -1 << endl;
return 0;
}
backtrack(lucky1, begin, end);
backtrack(lucky2, begin, end);
cout << ans << endl;
return 0;
}

全部评论

相关推荐

点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务