[逆元]|[逆元] luogu 4942

题目 [逆元]|[逆元] luogu 4942
文章图片

题目链接:https://www.luogu.com.cn/problem/P4942
思路 【[逆元]|[逆元] luogu 4942】这道题最后的ans的形式为 a n s = l ? 1 0 a + ( l ? 1 ) ? 1 0 b + . . . . . + r ? 1 0 0 ans=l*10^a+(l-1)*10^b+.....+r*10^0 ans=l?10a+(l?1)?10b+.....+r?100, 10 % 1 = 9 10\%1=9 10%1=9因此变为 a n s = l + l ? 1 + l ? 2 + . . . + r ans=l+l-1+l-2+...+r ans=l+l?1+l?2+...+r用等差数列即可
代码

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #if __cplusplus >= 201103L #include #include #endif #define int long long using namespace std; const int INF = 0x3f3f3f3f; const int mod = 9; signed main(){ ios::sync_with_stdio(false); cin.tie(0); cout.tie(0); int t; cin>>t; while(t--){ int l,r; cin>>l>>r; cout<<((l%mod*(r-l+1)%mod)%mod+((r-l+1)%mod*(r-l+mod)%mod)%mod*5%mod)%mod<

    推荐阅读