蓝桥杯平方差(打表)
- 电脑硬件
- 2025-09-05 20:21:01

样例输入: 1 5 样例输出: 4
思路:
题目数据是1e9,只有时间复杂度小于o(n) 才可以通过。暴力肯定不行,类似这种数学题,一时半会没有思路的,我们可以通过打表,快速罗列一定范围内的数据找规律。
我们列举0~100的数,不拿发现符合题意的数的规律为该范围内所有的奇数,和4的倍数。
#include<bits/stdc++.h> using namespace std; #define int long long const int N = 1e9; bool v[N]; int l,r; signed main() { ios::sync_with_stdio(0),cin.tie(0),cout.tie(0); cin>>l>>r; int c=(r+1)/2+r/4-l/2-l/4; cout<<c<<endl; return 0; }细节:(r+1)/2是为了求出0~r内所有奇数的个数(如3->2),r/4找4的倍数(7->1),而且题目中l,r是两闭区间,所以要减去0~(l-1)区间内奇数个数。
蓝桥杯平方差(打表)由讯客互联电脑硬件栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“蓝桥杯平方差(打表)”