比赛 [不是Rapiz出的]农场主钦定NOIP模拟赛1 评测结果 AAAAAAAAAA
题目名称 Rabbit Number 最终得分 100
用户昵称 L_in 运行时间 1.631 s
代码语言 C++ 内存使用 0.31 MiB
提交时间 2016-11-08 19:14:43
显示代码纯文本
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
typedef long long LL;
int L,R,ans;
int l,r;
int get_f(LL x){
	int res=0;
	for(LL i=x;i;i/=10)res+=i%10;
	return res;
}
void dfs(int x,int num){
	if(x==r+1){
		if(num>=L&&num<=R){
			int k=get_f(num);
			if(get_f((LL)num*num)==k*k)ans++;
		}return;
		
	}
	for(int i=0;i<4;i++)dfs(x+1,num*10+i);
}
int main(){
	freopen("rabbits.in","r",stdin);
	freopen("rabbits.out","w",stdout);
	scanf("%d%d",&L,&R);
	r=log10(R*1.0)+1;
	dfs(1,0);
	printf("%d\n",ans);
	return 0;
}