我看到的時候一點頭緒都沒有汗
number 這題告訴你s(a*a)=s(a)*s(a)且a*a<10^18所以s(a*a)<18*9<13*13 即s(a)<13
搜尋+適當剪枝即可
證明乙個定理:
rabbit number的各位數字一定<=3
若某數字x的一位,a>=4
那麼它在該位的貢獻是a^2的
而在x中該位自乘進了一位
故貢獻為 a^2/10+a^2%10
#include
#define ll long long
using namespace std;
int a[10];
int ans,l,r;
intget(ll a)
void check()
void dfs(int x)
for(int i=0;i<=3;i++)a[x]=i,dfs(x+1);
}int main()
洛谷 P1362 兔子數
題目描述 設 s n 表示 n 的各位數字之和,如 s 484 4 8 4 16,s 22 2 2 4。如果乙個正整數滿足 s x x s x s x 我們稱之為 rabbit n umber。比方說,22 就是乙個 rabbit n umber,因為 s 484 s 22 s 22 現在,給出乙個...
洛谷 P1362 兔子數
設 s n 表示 n 的各位數字之和,如 s 484 4 8 4 16,s 22 2 2 4。如果乙個正整數滿足 s x x s x s x 我們稱之為 rabbit n umber。比方說,22 就是乙個 rabbit n umber,因為 s 484 s 22 s 22 現在,給出乙個區間 l,...
LuoGu題解 P1362 兔子數
依題意模擬暴力打表找規律,注意到 符合題意的數中只包含 0,1,2,3 大於 3 的數,平方後都會進製,進製導致 s x s x 觀察資料範圍,最大滿足題意的數字有 10 位,那麼我們列舉每一位上的數字,然後暴力判斷是否為兔子數就行了。code include include include inc...