luogu P2368 EXCEEDED WARNING B

来源:互联网 发布:sql 判断是否在一天内 编辑:程序博客网 时间:2024/05/17 21:07

一道简单的数论。

我这次深刻地吸取了教训,数论题一定要打表看规律。

通过打表,得到了几个平方为987654321的九位数,在九位之下的数一个也没有,然后规律就出来了。

当一个数的平方的末尾符合要求时,无论我们再在这个数前面加什么数,平方的末尾都不会变了。

然后我们打表找规律,九位数有4个,在这4个数前填1-9,是72个十位数。

而在这4个数前填10-99,是720个十一位数,然后规律就明显了,100-999是7200个十一位数······

代码:

#include<iostream>#include<cstring>#include<string>#include<algorithm>#include<cstdio>#include<cmath>#define ll long longusing namespace std;long long ans;ll n;int main(){while(cin>>n){//cin>>n;if(n<9)cout<<'0';else if(n==9)cout<<'8'<<endl;else if(n==10)cout<<72<<endl;else{cout<<72;for(int i=11;i<=n;i++)printf("0");}cout<<endl;    }return 0;}


原创粉丝点击