当前位置:首页 > 题解目录 > 正文内容

【题解】区间和

亿万年的星光5年前 (2021-05-02)题解目录1829

【描述】

输入一个整数Q,进行Q次询问,每次给定两个整数l和r,每一次输出l~r中所有平方数的和 % 1000000007

【输入】

第一行是一个整数Q

后面的Q行每行有2个数字l和r

【输出】

Q行,每行一个整数。

【样例输入输出】

light.in

light.out

2

2   10

3   100

13

384


【数据范围】

40%的数据:Q<=1000,l<=r<=1000。

80%的数据:Q<=1000,l<=r<=1e6。

100%的数据: Q<=1e6,l<=r<=1e6

【题目分析】









【参考答案】

#include<bits/stdc++.h>
using namespace std;
int main() {
	int Q;
	long long int l, r, sum;//输入左边界右边界,防止int 不够
	int ans;
	cin>>Q;
	for(int i=0; i<Q; i++) {
		cin>>l>>r;//平方数所在范围
		sum = 0;//每次都得初始化
		long long  temp;
		for (int i = l; i <= r; i++) { //判断平方数
			temp = sqrt(i);
			if (temp * temp == i)
				sum += temp * temp;
		}
		ans = sum%1000000007;
		cout<<ans<<endl;
	}
	return 0;
}


扫描二维码推送至手机访问。

版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。

分享给朋友:

相关文章

【题解】连通块

【题目描述】一个n × m的方格图,一些格子被涂成了黑色,在方格图中被标为1,白色格子标为0。问有多少个四连通的黑色格子连通块。四连通的黑色格子连通块指的是一片由黑色格子组成的区域,其中的每个黑色格子...

因子分解

【题目描述】输入一个数,输出其素因子分解表达式。【输入描述】输入一个整数 n (2≤n<100)。【输出描述】输出该整数的因子分解表达式。表达式中各个素数从小到大排列。如果该整数可以分解出因子a...

【题解】木材加工

【题目描述】 木材厂有一些原木,现在想把这些木头切割成一些长度相同的小段木头(木头有可能有剩余),需要得到的小段的数目是事先给定的,切割时希望得到的小段越长越好。   ...

【题解】导弹拦截

【题目描述】某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导...

【题解】种花问题

【题目描述】假设有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花不能种植在相邻的地块上,它们会争夺水源,两者都会死去。给你一个整数数组 flowerbed 表示花坛,...

【题解】大数取模

【题目描述】求m%n。【输入描述】两个数,m和n。【输出描述】m模n的值。【样例输入】3【样例输出】2【数据范围】对于30%的数据, 1<m<10^18对于70%的数据, m>10^...