当前位置: 首页 > news >正文

模拟退火

#include<bits/stdc++.h>
using namespace std;
double kai=10000,eps=1,jiang=0.92,fw;//fw 记得赋值 
mt19937 rd(time(0));
#define bu t*(rd()%(2*(int)fw)*1.0-fw)
#define gl 1.0*rand()/RAND_MAX
int ans,sx;//题目要求时开 double 
int cha(int x)
{/**/return ans;
}
signed main()
{srand(20090918);sx=;//fw=;//ans=cha(sx);while (1.0*clock()/CLOCKS_PER_SEC<0.9){int nw=ans,x=sx;for(double t=kai;t>eps;t*=jiang){int o1=x+bu,k;while(o1∈[?,?]) o1=x+bu;k=cha(o1);if(k>ans) ans=k,sx=o1;if(k>nw||exp((k-nw)/t)>gl) x=o1;}}cout<<ans;return 0;
}

模拟退火不能无脑退火,要结合性质。

  1. 构造好初始解
  2. 猜想答案特性
  3. 选择更牛的随机下一步的方式
  4. 优化 calc
  5. 调参。

我才发现我是唐人,答案数组最好开 double,不开的话一定要记得在 \(△d/t\) 时加上 1.0* 不然你就会完了!

http://www.wxhsa.cn/company.asp?id=7022

相关文章:

  • 记录我见过的神人
  • DOS指令学习
  • 动态SQL
  • 调教分块代码
  • 100 粉粉福
  • My All Math
  • 【Azure环境】使用ARM Template部署Policy模板时候报错不支持filed函数: The template function field is not valid.
  • CDQ分治
  • 开源AI大模型、AI智能名片与S2B2C商城小代码:从“不出现=不存在”到“精准存在”的数字化转型路径
  • 202509 组合数学与计数类 DP 笔记
  • edu 106 E(LCS dp + 多源bfs优化)
  • ABC310E NAND repeatedly 题解
  • MyBatis插入语句配置
  • 操作运算符
  • 看 NOI2025 游记记
  • 整体二分
  • 得力 - Bruce
  • 短视频营销运营导师张伽赫,绳木传媒AI+短视频引领企业数字化变革
  • 详细介绍:还在重启应用改 Topic?Spring Boot 动态 Kafka 消费的“终极形态”
  • 用 TensorFlow 和 CNN 实现验证码识别
  • 用 PyTorch 和 CNN 进行验证码识别
  • 用 Keras 和 CNN 进行验证码识别
  • 从 Bank Conflict 数学表示看 Buffer 设计 Trade-Off
  • 被彼此笼罩 任泪水将我们缠绕 深陷入恶魔的拥抱 在阴冷黑暗处灼烧 吞下这毒药
  • mysql无法连接服务器的mysql #mysql8
  • DAG 最小路径覆盖问题 笔记
  • SP3D c# 开发独立的exe
  • python错误code
  • 瑞 ping 我
  • java八股文笔记 - 指南