算法练习记录(24.10.5)

news/2024/12/22 14:17:33/文章来源:https://www.cnblogs.com/oaths/p/18448307

1.B. Brightness Begins

思路

要求最后的灯泡打开的数量,由于一开始灯泡是打开的,如果最后还需要打开,那么操作数量一定是偶数,移目至操作前提,需要灯泡的序号能整除 \(x\),由于遍历1~x,推出最后灯泡 \(i\) 亮的条件是:\(1~i\) 中有偶数个\(i\)的因数,即 \(i\) 有偶数个因数,反之即有奇数个因数,由于因数成对存在,只有当这个数是完全平方数的时候才会有奇数个因数,所以题目转化为: \(n\) 以内至少有 \(k\) 个非完全平方数。
正难则反,我们只需反求:\(n\) 以内至少有 \(n-k\) 个非完全平方数。第 \(n-k\) 个非完全平方数即 \((n-k)^2\) ,可得方程:\(n<=(n-k)^2\) ,变形得:
\(f(n)=n-sqrt(n)>=k\),
由于 \(f(n)\) 单调递增,所以问题变成了:找到最小的 \(n\) ,使得 \(f(n)>=k\) 成立,二分即可;
注意:使用sqrtl代替sqrt,精度需求高;

AC代码

    #include<bits/stdc++.h>#define endl '\n'#define ll long long#define pb push_back#define bs bitset#define fast() ios::sync_with_stdio(false),cin.tie(nullptr),cout.tie(nullptr)using namespace std;typedef pair<char,int> PCI;typedef pair<int,int> PII;typedef pair<long long, long long> PLL;typedef priority_queue<int> PQ;const int N = 2e5+10, MAX = 1e9, INF = -1e9;ll k;void solve(){cin>>k;ll l=1;ll r=2e18;while(l<r){ll mid=(l+r)>>1;if(mid-(int)sqrtl(mid)>=k)r=mid;else l=mid+1;//cout<<l<<" "<<r<<" "<<mid<<" "<<mid-sqrt(mid)<<endl;}cout<<l<<endl;}int main(){fast();int t=1;cin>>t;while(t--){solve();}return 0;}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/808633.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

高级语言程序设计第二次作业(102400106刘鑫语)

这个作业属于课程:https://edu.cnblogs.com/campus/fzu/2024C/ 作业要求:https://edu.cnblogs.com/campus/fzu/2024C/homework/13282 学号:102400106 姓名:刘鑫语 程序清单 最初都很顺利 3.1 3.2 3.3 3.4 3.5 3.6 出现了问题但一直没能解决,回宿舍后试着改成c99 依然报错,…

快乐数学4弧度

4 弧度 我们大多数人都不知道为什么圆要有 360 度。在学习高等数学或物理时,我们会记住一个神奇的数字--“圆的大小”,并将自己设置为一个 “圆的360度”。 专家们说:“弧度让数学变得更简单!”但却没有简单的理由(涉及泰勒级数的讨论并不简单)。今天,我们将揭开弧度的真…

序列化器ser.validated_data、ser.initial_data、ser.data

class LoginPwdSerializer(serializers.Serializer):mobile = serializers.CharField(required=True, validators=[RegexValidator(r"\d{11}", message="格式错误")])password = serializers.CharField(required=True)def validate_mobile(self, value):ex…

12-网络安全审计技术原理与应用

12.1 概述 1)概念 :指对网络信息系统的安全相关活动信息进行获取、记录、存储、分析和利用的工作。 作用:在于建立“事后”安全保障措施,保存网络安全事件及行为信息,为网络安全事件分析提供线索及证据,以便于发现潜在的网络安全威胁行为,开展网络安全风险分析及管理。 …

林史语其十(101-111)【下半更新】

12345鉴于收集素材与发布素材之间有一定延迟,此后林史一章分两次更新 先把存的旧东西发一下 #101故事源于 joke3579 学长博客里一份证明,涉及到求不定积分的 如果你不知道啥是不定积分,你只需要知道它是导数逆运算就行了 学长博客里写的是 :\(A\) 求导后等于 \(B\) HDK:\(…

林史语其十(101-110)【下半更新】

12345鉴于收集素材与发布素材之间有一定延迟,此后林史一章分两次更新 先把存的旧东西发一下 #101故事源于 joke3579 学长博客里一份证明,涉及到求不定积分的 如果你不知道啥是不定积分,你只需要知道它是导数逆运算就行了 学长博客里写的是 :\(A\) 求导后等于 \(B\) HDK:\(…

CF 1805 D. A Wide, Wide Graph (*1800) 思维 + 树的直径

CF 1805 D. A Wide, Wide Graph (*1800) 思维 + 树的直径 题目链接 题意:思路: 若当前点到最远的点的距离 \(< k\) , 说明 \(x\) 自己成为一个联通块。 并且我们知道距离任意一点最远的点一定是树直径的一个端点。 反之,则与直径端点在同一个联通块。 所以一个点要么独立…

Windows应急响应-Auto病毒

Windows—Auto病毒应急思路分享。目录应急背景分析样本开启监控感染病毒查看监控分析病毒行为autorun.inf分析2.异常连接3.进程排查4.启动项排查查杀1.先删掉autorun.inf文件2.使用xuetr杀掉进程3.启动项删除重启排查入侵排查正常流程 应急背景 运维人员准备通过windows共享文档…

帝国cms后台admin帐号密码忘记的处理方法

5.1 至 7.0 版本登录 phpMyAdmin访问 http://yourdomain.com/phpmyadmin。 输入数据库用户名和密码登录。选择帝国CMS 安装所在的数据库在 phpMyAdmin 主界面中,找到并选择帝国CMS 使用的数据库。找到 phome_enewsuser 表在数据库中找到名为 phome_enewsuser 的表。 单击该表以…

[OI] 树链剖分

学的时候比较朦胧,现在不朦胧了,所以写一下 讲解 重儿子:一个节点的子树大小最大的儿子 轻儿子:非重儿子 重链:节点 -> 重儿子 -> 重儿子 .. 这样的链A beautiful Tree蓝线为重链可以发现,树上的所有节点一定属于且仅属于一个重链 首先要知道如何找重链 这很简单,…

忘记帝国cms网站后台登录密码和认证码如何找回

1. 准备重置脚本下载附件:下载提供的重置脚本文件。 将文件上传到网站根目录。2. 访问重置页面访问重置页面:访问 /e/update/resetuser.php。 默认密码为 123456,也可以在 resetuser.php 中修改这个密码。3. 重置密码输入密码:输入默认密码 123456。 跳转到重置密码页面。 …

Golang安全开发第一节

Golang安全开发 一、安装Go&编译器基础使用 1. 安装包地址 https://golang.google.cn 2. 添加环境变量 windows 直接点击msi安装即可 Linux tar -zxvf xxx.xxx.xxx.tar.gz mv -r go /use/local/go vim /etc/profile export PATH=$PATH:/usr/local/go/bin source /etc/profi…