题目
题目链接
题解找规律。
结论:平方数都是暗的,其余的都是亮的。
证明: 显然,当一个灯被操作奇数次时会变亮。
任意一个灯被操作的次数等于其编号的全部因子数-1: 理由很简单,-1操作是去掉因子1
,因为不存在对编号为1的倍数的灯进行操作,其他的因子,都会对次数进行一次操作,包括自己。比如12
,因子是1 2 3 4 6 12
,但是只有2 3 4 6 12
会对其进行操作,因此被操作5次最后是亮的。
一个数的因子一般是成对出现,还是上面的12
,1 12
为一对,2 6
为一对,3 4
为一对。由于题目要求忽略1
,那么我们可以得出结论:当因子数为奇数时,灯最终是暗的;当因子数是偶数时,灯最终是亮的。
那什么情况下因子数是偶数,什么情况下是奇数呢? 你会发现只有一种情况下因子数会是奇数,那就是平方数,因为平方数存在一对因子,这两个因子是一样的,比如16
,存在一对因子是4 4
,因此其因子数为奇数,所以最终16对应的灯是暗的。
最终,我们可以直接计算出一段区间内平方数的个数,再用区间总数减去平方数个数就是答案。
找规律也可以啊。
#include
using namespace std;
typedef long long ll;
ll n, l, r;
int main()
{
cin>>n>>l>>r;
ll a = sqrt(r);
ll b = sqrt(l);
if(b*b != l) b++;
cout
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?