【模板】三分 | 函数 使用 SA 解决

函数计算搭建 Serverless Web 应用(三)- 三分钟搭建 Web 应用 简介 阿里云函数计算(Function Compute)是事件驱动的全托管计算服务,是阿里云的Serverless计算平台。基于函数计算构建应用,您无需管理服务器等基础设施,而是专注于应用逻辑的开发,大幅提高开发效率。 函数计算搭建 Serverless Web 应用(一)- HTTP 触发器中阐述了 Web 应用(Serverless web backend) 是函数计算很重要的一... 阅读详情

题目链接

我们来分析一下这个题。

就这么说,虽然你能够用这个那个数学方法来证明出这是一个单峰函数,但是很多时候如果没有“三分”这个标签,你压根就想不出来这道题是单峰函数。

所以我们可以用模拟退火来解决这道题(调参调了一天)。

这道题因为较为简单,所以可以设置较为激进的降温策略。初始温度设置一个最平常的 4000 就可以了。

其他的就跟 SA 的模板是差不多的了。

AC 代码:

#include <bits/stdc++.h>
using namespace std;
const double down=0.9943; // 可以设置激进一点的降温速度
int n;
struct node{
	double x,y,w;
}a[10005];
double dx,now;
double energy(double x)
{
	double tot=-1e20; // 注意 f(x) 可能为负数
	for(int i=1; i<=n; i++)
	{
		tot=max(tot,a[i].x*x*x+a[i].y*x+a[i].w);
	}
	return tot;
}
void SA()
{
	double t=4000;
	while(t>1e-17)
	{
		double tx=dx+(rand()*2-RAND_MAX)*t;
		if(tx<0) tx=(rand()%100);
		if(tx>1000) tx=(1000);
		
      	double temp=energy(tx);
      	double delte=temp-now;
      	if(delte<0)
      	{
      		dx=tx;
      		now=temp;
		  }
		else if(exp(-delte/t)*RAND_MAX>rand())
		{
			dx=tx;
		}
		t*=down;
	}
}
void sjk()
{
	cin>>n;
	for(int i=1; i<=n; i++)
	{
		cin>>a[i].x>>a[i].y>>a[i].w;
	}
	dx=500;
	now=energy(dx);
	SA();
	cout<<fixed<<setprecision(4)<<energy(dx)<<endl;
}
int main()
{
	int t;
	cin>>t;
	while(t--) sjk();
	return 0;
} 

但是我们悲催的发现,只有吸氧可以过这个代码,不然只有 50 分。

怎么办!

打正解?No way!

温度? 3000 3000 3000 就够!

降温速度? 0.885 0.885 0.885 就行

ACcode(不吸氧):

#include <bits/stdc++.h>
using namespace std;
const double down=0.885;
int n;
struct node{
	int  x,y,w;
}a[10005];
double dx,now;
double energy(double x)
{
	double tot=-1e20;
	for(int i=1; i<=n; i++)
	{
		tot=max(tot,a[i].x*x*x+a[i].y*x+a[i].w);
	}
	return tot;
}
void SA()
{
	double t=3000;
	while(t>1e-17)
	{
		double tx=dx+(rand()*2-RAND_MAX)*t;
		if(tx<0) tx=0;
		if(tx>1000) tx=(1000);
		
      	double temp=energy(tx);
      	double delte=temp-now;
      	if(delte<0)
      	{
      		dx=tx;
      		now=temp;
		  }
		else if(exp(-delte/t)*RAND_MAX>rand())
		{
			dx=tx;
		}
		t*=down;
	}
}
void sjk()
{
	cin>>n;
	for(int i=1; i<=n; i++)
	{
		cin>>a[i].x>>a[i].y>>a[i].w;
	}
	dx=500;
	now=energy(dx);
	SA();
	cout<<fixed<<setprecision(4)<<energy(dx)<<endl;
}
int main()
{
	int t;
	cin>>t;
	while(t--) sjk();
	return 0;
} 

一段 模拟退火

一台 电脑

一个夜晚

一个又 WA 又 TLE 的记录

【爬虫】三分钟制作自己的资讯收集器 Crawlee 最近想做一个法律资讯收集器,每天获取需要看的法律、AI、商业案例的资讯。发现一个非常好用的爬虫框架: crawlee ,功能强大,牛的不行。文档链接:https://crawlee.dev/js/docs/quick-start。 阅读详情

相关推荐

基于Ultralytic实现多路摄像头目标检测

基于Ultralytic实现多路摄像头目标检测前面的文章分享了单路摄像头画面的YOLO目标检测,这篇文章主要分享一下多路摄像头画面的实时YOLO目标检测。测试环境在Windows系统下进行。

qq_57674776的博客 942

P3382 【模板】三分法

菜鸡刷模板系列。。。 这道题其实是可以二分的,但是有更好的算法,叫做三分。 三分这种算法用于求单峰函数的最大值或者最小值。 算法思想就是弄\((l, r)\)区间的两个三等分点,然后来缩小范围。 因为这道题是求峰顶,所以我们可以模拟退火通过两个三等分点的大小关系来缩小范围。 我们把那个值小的那边的范围弄掉,慢慢我们就会到达峰顶。 还有另外一种也听容易的做法:求导后二分导函数。这个没什么难...

dianshu0741的博客 164

告别ArcGIS小红叉:从‘无法验证登录信息’到成功连接在线资源的完整排错记录

本文详细记录了从Windows便签的网络错误到ArcGIS连接问题的完整排错过程。通过分析代理服务器、DNS配置和系统网络设置,解决了ArcGIS无法验证登录信息的问题,提供了实用的网络优化方案和技术排错思路。

weixin_26800111的博客 391

【模板】三分法

模拟退火(SA)学习link 玄学摸你退火,精度坑逼,玄学调参。。。 AC代码 #include<bits/stdc++.h> #define re register int using namespace std; int n; double l,r,ans=-99999999,coe[20]; double T=0.95,t=0.99,mt=1e-14,wzzorz; d...

W15251243789的博客 233

探索Vortex开源GPGPU:RISC-V SIMT架构(4-1),Execute SFU(1)

本文详细分析了Vortex RISC-V内核6级流水线中Execute阶段的SFU(特殊功能单元)模块。重点介绍了SFU的数据流结构,包含dispatch_unit、pe_switch、csr_unit、wctl_unit和gather_unit五个子模块。文章深入解析了warp控制指令wspawn和tmc的实现机制:wspawn用于激活指定数量的warp并设置新PC值,tmc则用于控制线程掩码和warp状态。通过C代码和汇编指令的对照分析,阐明了这些指令在并行计算中的关键作用,包括线程激活、状态切换和执行

weixin_55313207的博客 1364

SE-0526激光避障雷达扫描传感器输入输出连线方法及PLC联机实例说明

SE-0526激光避障雷达扫描传感器广泛应用于原材料运输与处理、移动装配、托盘或货架运输、产成品自动运输、生产线自动对接,餐厅自助送餐等AGV小车、服务机器人、仓储机器人、无人叉车导航、避障、定位等。 本文重点介绍SE-0526激光避障雷达扫描传感器输入输出连线方法及PLC联机实例说明。

华翔天诚科技 2695

二分+三分模板

二分: 返回第一个大于val的数 5 1 3 5 6 9 6 >>9 5 1 3 5 7 9 6 >>7 int bsearch(int val){ int l = 0, r = n; int mid = 0; while (l <= r){ mid = (l + r)>&gt...

weixin_30449239的博客 64

SpringAi 通过大模型来实现调用自己的Api

摘要 本文介绍了如何利用Spring AI的Tools机制扩展大模型能力,实现业务系统集成。通过@Tool和@ToolParam注解定义工具方法,将订单查询和关闭功能暴露给大模型调用。关键实现包括:1)使用详细描述标注工具方法和参数;2)在ChatClient中注册工具服务;3)集成对话记忆保持上下文。该方法使AI具备操作业务系统的能力,形成"认知-决策-执行"闭环,大幅提升了模型在实际业务场景中的应用价值。

又要搬砖了 838

【算法】二分法和三分法

学习二分算法

gzkeylucky的博客 331

树莓派5使用CSI摄像头 | 树莓派5接上CSI摄像头后命令行操作显示检测无设备

此系列用于记录树莓派5的一些操作,这篇文章讲述树莓派5如何使用CSI摄像头。

beyourself_he的博客 8796

基于深度学习的水质预测:多参数监测与预测

首先,我们需要收集水质监测的多参数数据。收集到的数据应包括不同时间点的水质参数值以及相应的水质等级标签,用于训练和评估深度学习模型。同时,数据的质量和数量对于模型的性能也有重要影响,因此在实际应用中需要充分考虑数据的采集和处理过程。总之,基于深度学习的水质预测可以通过收集水质监测的多参数数据并使用适当的深度学习模型进行训练和预测来实现。通过以上的深度学习模型,我们可以利用水质监测的多参数数据进行水质预测。这种基于深度学习的方法可以提高水质预测的准确性和稳定性,为水质监测和环境保护提供有力支持。

web_bug407的博客 1103

2018 ICPC南京 D - Country Meow(模拟退火/三分套三分套三分)

传送门 题目大意 最小球覆盖裸题 模拟退火 这题和POJ2069POJ2069POJ2069最大的区别是,这题的精度卡不紧,使用一般的模拟退火就能写过 #include <cstdio> #include <math.h> #include <iostream> #include <algorithm> using namespace std; const double T = 100000; const double delta = 0.998; co

Happig的博客 364

基于STM32、HAL库的IP5356M快充协议芯片简介及驱动程序设计

@param hip: IP5356M句柄指针。* @param hip: IP5356M句柄指针。* @param hip: IP5356M句柄指针。* @param hip: IP5356M句柄指针。* @param hip: IP5356M句柄指针。* @param hip: IP5356M句柄指针。* @param hip: IP5356M句柄指针。* @param hip: IP5356M句柄指针。* @param hip: IP5356M句柄指针。

corlin6688的博客 1223

三分

CZ写的三分模板 View Code 1 #include <stdio.h> 2 #include <string.h> 3 #include <stdlib.h> 4 #include <math.h> 5 #define eps 1e-9 6 double a,b; 7 double getsum(doubl...

weixin_30872789的博客 73

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

四足机械臂URDF配置与逆运动学避坑指南

URDF(Unified Robot Description Format)是机器人建模与仿真的基础描述语言,其本质是一套刚体动力学拓扑契约,涵盖连杆关系、惯性参数、关节约束等物理语义。理解URDF的解析逻辑与验证机制,是保障逆运动学求解、仿真精度及实机部署可靠性的前提。实际开发中,空格隐式错误、inertial张量非正定、visual/collision体不一致等常见问题,常导致关节解体、末端漂移或TF树分裂。结合CoppeliaSim与ROS协同验证,通过物理引擎压测、坐标系对齐、传感器保真建模等手段,

weixin_34162228的博客 310

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

第十一周学习体会

这个周刷了一些有关二分和三分的题目,感觉对这种类型的题目有了一定的理解,下面是一些做题过程中可能会用到的解题模板: 最小值的最大值/最小值的最大值模板 1.判断函数: bool judge(int x) { int before = 0; int num = 0; for(int i = 1; i <= n+1; i++) { if(a[i] - before < x)

qq_45890015的博客 292

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

使用 WebIDE 三分钟上手函数计算

背景 为了解决函数计算本地环境差异和配置繁琐的问题,在此背景下,就有了我们的 WebIDE 产品,WebIDE 能让函数的开发、测试和部署更加流畅,降低了函数计算的学习成本和缩短了函数的开发周期。 介绍 WebIDE 是一个基于 H5 支持多语言的集成开发环境。相当于 VS Code 的网页版。功能特色: 文件树,支持拖拽移动、拖拽上传、打包下载、重命...

weixin_34007291的博客 291

桌面Agent上线后我的文件夹乱套了?有道Lobster三分法实战与目录模板

当桌面Agent高频处理文件时,传统目录结构极易崩溃。本文基于有道Lobster实战经验,提出输入区/沙箱区/交付区三分法,提供可复用的目录模板与权限配置代码,解决文件混淆、版本污染等典型问题,实现自动化与人工协作的无缝衔接。

weixin_47315004的博客 17

DataX-Web任务模板实战:三分钟批量生成上百张表的同步任务

本文详细介绍了如何使用DataX-Web任务模板功能快速批量生成上百张表的数据同步任务。通过实战案例和技巧分享,帮助用户高效处理分库分表、周期性表迁移等场景,大幅提升数据同步效率,特别适合处理增量与全量数据同步需求。

weixin_30876945的博客 159

告别繁琐动画编码:Manim模板系统3分钟上手指南

你是否还在为制作数学动画写几百行重复代码?是否因忘记参数配置反复查阅文档?本文将带你掌握Manim模板系统的核心用法,通过代码模板与配置优化,让数学可视化效率提升10倍。读完你将获得:3类实用模板完全指南、5分钟场景生成技巧、自定义模板的进阶方法。 ## 模板系统核心价值 Manim作为数学动画引擎(Animation engine for explanatory math videos),其...

gitblog_00100的博客 375

Spring Boot服务器启动失败?快马AI三分钟生成自修复模板

实际操作中我发现,平台生成的代码质量很高,而且已经内置了错误检测功能。对于Java开发者来说,这大大节省了调试时间,让我们可以专注于业务逻辑的开发。作为一个经常和Spring Boot打交道的开发者,我总结了一套完整的解决方案,并借助。上,我只需要输入这个问题的描述,平台就能自动生成一个完整的Spring Boot项目框架,包含了上述所有功能。如果你也经常遇到Spring Boot启动问题,不妨试试这个平台,三分钟就能生成一个自修复的项目模板,再也不用为这些基础问题头疼了。快速生成了可运行的示例项目。

GoldEagle19的博客 948

三分钟快速搭建Vue2+webpack项目

三分钟快速搭建Vue2+webpack项目

月影WEB的博客 1415

三分钟掌握AI视频生成:Pixelle-Video解决你的内容创作难题

你是否曾为制作短视频而烦恼?脚本写作、素材收集、配音剪辑……传统视频制作流程复杂耗时,让许多创作者望而却步。现在,AI全自动短视频引擎Pixelle-Video为你提供了一站式解决方案,只需输入主题,就能在几分钟内生成专业级视频内容。这款开源工具支持本地部署,保护你的数据隐私,让AI视频生成变得简单高效。 --- ## 🔍 传统视频制作的痛点与AI解决方案 ### 内容创作者面临的三大挑战

gitblog_00917的博客 1154

快马AI三分钟解决Spring Boot内嵌Tomcat启动失败难题

通过这次经历,我发现InsCode(快马)平台确实能显著提高开发效率,特别是解决这类常见问题。平台提供的智能检测、自动配置和一键部署功能,让Spring Boot开发变得更加轻松愉快。如果你也遇到类似问题,不妨试试这个平台,相信会有不错的体验。

MoonbeamRaven28的博客 618

深挖C++:类和对象(中)

(先进后出)

xys_678的博客 254
上一篇: 洛谷题解 - P1003 [NOIP2011 提高组] 铺地毯
下一篇: P2019 四平方和定理题解
Python_enjoy
博客等级 码龄4年 1201粉丝 52原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值