B 吉哥系列故事 恨7不成妻

2022-03-28 22:38:28 字數 1635 閱讀 2571

單身!

依然單身!

吉哥依然單身!

ds級碼農吉哥依然單身!

所以,他生平最恨情人節,不管是214還是77,他都討厭!

吉哥觀察了214和77這兩個數,發現:

2+1+4=7

7+7=72

77=711

最終,他發現原來這一切歸根到底都是因為和7有關!所以,他現在甚至討厭一切和7有關的數!

什麼樣的數和7有關呢?

如果乙個整數符合下面3個條件之一,那麼我們就說這個整數和7有關——

1、整數中某一位是7;

2、整數的每一位加起來的和是7的整數倍;

3、這個整數是7的整數倍;

現在問題來了:吉哥想知道在一定區間內和7無關的數字的平方和。

輸入資料的第一行是case數t(1 <= t <= 50),然後接下來的t行表示t個case;每個case在一行內包含兩個正整數l, r(1 <= l <= r <= 10^18)。

請計算[l,r]中和7無關的數字的平方和,並將結果對10^9 + 7 求模後輸出。

31 9

10 11

17 17

236221

0

#include#include#include#include #include#include#include#include#define sf scanf

#define pf printf

#define sca(x) scanf("%d",&x)

#define mm(x,b) memset((x),(b),sizeof(x))

#include#include#include#define rep(i,a,n) for (int i=a;i=n;i--)

typedef long long ll;

const ll mod=1e9+7;

const double eps=1e-8;

using namespace std;

const double pi=acos(-1.0);

const int inf=0xfffffff;

const int n=1000005;

struct node

//³õê¼»¯

}dp[25][12][12];

ll p[25];

int num[25];

void first()

node dfs(ll pos,ll sum,ll ssum,ll limit)//î»êý£¬î»êýºí%7£¬êýöµ%7£¬êç·ñêçéïïþ

if(!limit&&dp[pos][sum][ssum].cnt!=-1) return dp[pos][sum][ssum];

int up=limit?num[pos]:9;

for(int i=0;i<=up;i++)

if(!limit)

dp[pos][sum][ssum]=ans;

return ans;

}ll solve(ll n)

//mm(dp,-1);

node ans=dfs(pos,0,0,1);

return ans.ssum;

}int main()

return 0;

}

吉哥系列故事 恨7不成妻

乍一看好像是道數字dp 然而要求的是平方和。在暫時沒有其他思路的情況下 能不能用數字dp做平方和?數字dp在搜尋的時候是這麼個樣子的 比如說 abcdefghi 現在搜到 9982 e fghi 那麼現在確定了前面的9982,當前這一位和之後的fghi 都不確定。在這一位上的搜尋結果就覆蓋了efgh...

吉哥系列故事 恨7不成妻

題意 輸入t組數,每組有兩個數,求出n m區間內不含有7且不能被7整除且各個位數相加之和不被7整除的數的平方和。資料在1 1e18,結果對1e9 7。由於數太大,容易溢位,所以比較麻煩的是要把數拆開。include include include include include include in...

題解 吉哥系列故事 恨7不成妻

description 單身 依然單身!吉哥依然單身!ds級碼農吉哥依然單身!所以,他生平最恨情人節,不管是214還是77,他都討厭!吉哥觀察了214和77這兩個數,發現 2 1 4 7 7 7 7 2 77 7 1 最終,他發現原來這一切歸根到底都是因為和7有關!所以,他現在甚至討厭一切和7有關的...