【luoguP4942】

第一思路高精度

那就看看范围好了

暴力超时无疑 模9赠你天机!

你不知道的事:

        一个数字除以9的余数等于它的各位数字之和除以9的余数

        为么呢  因为10%9==1所以例如 1 2 3 4 5 6 7 8 这一串数和%9==12  34  56  78的和%9   (a*10)%9对a%9没有影响

 要求l到r的和 等差数列求和公式!!! 

 注意(l+r)*(r-l+1)/2的时候把/2送给偶数…

最后 开longlong

#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;
long long q,l,r,x,y;
int main() {
	ios::sync_with_stdio(false);
	cin>>q; 
	while(q--) {
	    cin>>l>>r;
    	x=l+r;
    	y=r-l+1;
	    if(x%2==0) x/=2;
    	  else y/=2;
		cout<<(x%9*y%9)%9<<endl;
	}
	return 0;
} 

猜你喜欢

转载自blog.csdn.net/syh8501/article/details/88962532
今日推荐