22数 看到题目描述就可以大概知道这是一道数位 dp ,当然,不会写数位 dp 也没事,我们还有另一种方法,分块打表。 这题数据范围并不是很大,所以可以通过分块打表的方式过,简要思路,通过打表预处理出每隔 10610^6106 的范围的答案,大块维护,小块暴力。(打表时注意换行,防爆)。 具体代码如下: #include <bits/stdc++.h> using namespace std; const int N=1e4+10; long long a[N]={0,5177,13409,19471,23803,26800,28802,30089,30881,31343,3...