蓝桥杯平方差(打表)

复制代码
样例输入: 1 5
样例输出: 4

思路:

题目数据是1e9,只有时间复杂度小于o(n) 才可以通过。暴力肯定不行,类似这种数学题,一时半会没有思路的,我们可以通过打表,快速罗列一定范围内的数据找规律。

我们列举0~100的数,不拿发现符合题意的数的规律为该范围内所有的奇数,和4的倍数。

cpp 复制代码
#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)区间内奇数个数。

相关推荐
007php0071 小时前
某大厂MySQL面试之SQL注入触点发现与SQLMap测试
数据库·python·sql·mysql·面试·职场和发展·golang
JosieBook20 小时前
【程序人生】有梦想就能了不起,就怕你没梦想
程序人生·职场和发展
scx201310041 天前
P13929 [蓝桥杯 2022 省 Java B] 山 题解
c++·算法·蓝桥杯·洛谷
data myth1 天前
力扣1210. 穿过迷宫的最少移动次数 详解
算法·leetcode·职场和发展
Greedy Alg1 天前
LeetCode 240. 搜索二维矩阵 II
算法·leetcode·职场和发展
墨染点香1 天前
LeetCode 刷题【68. 文本左右对齐】
算法·leetcode·职场和发展
GalaxyPokemon1 天前
LeetCode - 202. 快乐数
算法·leetcode·职场和发展
吃着火锅x唱着歌1 天前
LeetCode 522.最长特殊序列2
算法·leetcode·职场和发展
CoderYanger2 天前
MySQL数据库——3.2.1 表的增删查改-查询部分(全列+指定列+去重)
java·开发语言·数据库·mysql·面试·职场和发展
yh云想2 天前
《Java线程池面试全解析:从原理到实践的高频问题汇总》
jvm·面试·职场和发展