浅谈模拟系列算法

news/2025/11/7 18:34:14/文章来源:https://www.cnblogs.com/AzureHair/p/19200618

模拟着火/模拟火灾算法

算法名称:模拟火退

研究时间:2023年10月17日19点

算法引入:发现了模拟退火算法中出现的正确性和复杂度问题,故研发模拟火退算法进行优化。

注意到模拟退火算法中出现了较为严重的正确性问题和复杂度问题,考虑如何优化以达到保证正确性和复杂度的效果。

我们考虑每一次的偏移量在当前答案到目标答案差值内进行随机,并且保证能够每次偏移都能够有较大偏差,根据计算,我们的错误率低于 \(10^{-9}\) 就能够完成 A+B Problem 的问题,这是一个非常伟大的成就,不要只看到他解决了红题,但是他的应用前景无可限量。

下面附上 A+B Problem 的 AC 代码,虽然模拟火退能够通过此题,但仍需进行优化,请持续关注此博客查看模拟火退等算法的最新进展。

#include<bits/stdc++.h>
#define int long long
using namespace std;
const int maxn=1e6;
int a,b,ans=0;
int rd()
{return rand()*rand()^rand();
}
signed main()
{srand(time(0));int T=maxn;scanf("%lld%lld",&a,&b);if(a+b==0){cout<<0<<endl;return 0;}if(a+b<0){while(T){int rnd=rd()%maxn+1;if(rnd<=T){int mov=rd()%(ans-(a+b))+1;ans-=mov;}if(ans==a+b){cout<<ans<<endl;return 0;}T=T*0.99;}return 0;}while(T){int rnd=rd()%maxn+1;if(rnd<=T){int mov=rd()%(a+b-ans)+1;ans+=mov;}if(ans==a+b){cout<<ans<<endl;return 0;}T=T*0.99;}return 0;
}

有问题的人可以在评论区提问。

算法名称:模拟治水

研究时间:2023年10月17日20点15分

算法引入:发现了模拟火退算法中出现的局限性问题,故研发模拟治水算法进行优化。

注意到虽然模拟火退算法效率高且正确率极高,但是出现了应用面较窄的情况,于是考虑进行优化,故此研发模拟治水。

我们考虑到利用二进制优化对数据的查找:

每次随机生成每位二进制数,并查看与目标状态的每位二进制数是否相同并进行修改,故此有极高的正确率和准确性,并且能够有更广的应用空间,具体细节请见代码,下面代码可以解决 \(c(a+b)\) 问题,题号B2008。代码如下:

#include<bits/stdc++.h>
#define int long long
using namespace std;
const int maxn=2e9;
int a,b,c,sum,ans=0,flood=0;
int rd()
{return rand()*rand()^rand();
}
signed main()
{cin>>a>>b>>c;srand(time(0));int T=maxn;if(a+b==0){sum=0;}else if(a+b<0){int cnt=0;while(T){int rnd=rd()%maxn+1;if(rnd<=T){int mov=rd()%(cnt-(a+b))+1;cnt-=mov;}if(cnt==a+b){sum=cnt;break;}T=T*0.99;}}else{int cnt=0;while(T){int rnd=rd()%maxn+1;if(rnd<=T){int mov=rd()%(a+b-cnt)+1;cnt+=mov;}if(cnt==a+b){sum=cnt;break;}T=T*0.99;}}//cout<<sum<<endl;if(c<0){c=-c;sum=-sum;}int cnt=0;T=maxn;while(T){int rnd=rd()%maxn+1;if(rnd<=flood){cout<<sum*c<<endl;return 0;}if(rnd<=T){int mov=rd()%maxn+1;for(int i=0;i<=20;i++){if((((c>>i)&1)^((ans>>i)&1))&&((mov>>i)&1)){ans^=(1<<i);}}}if(ans==c){//cout<<ans<<" "<<sum<<endl;cout<<ans*sum<<endl;return 0;}T=T*0.99;flood+=1e5;}return 0;
}

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

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

相关文章

第三十六篇

今天是11月7号,今天没课

Ai元人文随想:三值纠缠中的人文关怀

Ai元人文随想:深入探讨三值纠缠思维中蕴含的深刻人文关怀 岐金兰 灵魂的测量仪:三值纠缠思维中的人文之光 在技术理性日益主导、算法试图将人类简化为一行行代码的时代,一种名为“三值纠缠”的思维模型,却悄然进行…

R语言实现多组样本两两t检验的完整教程

t检验的核心思想是通过样本均值与方差的比较,评估两个总体均值是否存在显著差异。当有三个或更多组数据时,单次t检验已不再适用,因此通常的做法是先进行方差齐性检验与单因素方差分析(ANOVA),如果总体差异显著,…

实用指南:TensorFlow深度学习实战(40)——图神经网络(GNN)

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2023QDEZ男人八题赛后总结

这里是QDEZ男人八题赛后总结博客。 这是QDEZ OI 出题组的最后一场公开赛,作为行将就木的退役选手,在此再次提醒大家: 今年欢笑复明年,不知退役在眼前! 比赛于线下机房举行,本次有___人参加比赛,感谢大家的参与。…

学习差的孩子,有必要用学习机吗?

学习差的孩子用学习机是智商税?松鼠AI双线方案给出提分答案 一、打破偏见:学习成绩差的学生,更需要专业 AI 学习机 “学习机是智商税” 的说法,本质上是对 “单一工具依赖” 的否定,而非对 AI 教育价值的否定。对…

CSP-S2023游记

赛前第三天: 白天狂摆一天文化课,整个人都进不到学习状态里,摆摆摆摆摆,晚上在机房里进行了 CSP 动员大会,大家都写下了自己祝福的话或者是自己挂分的秘籍,为了让这些话有灵魂,我加上了两句曹学(最后这两句曹学…

2025苏州驾驶证培训推荐榜:摩托车驾驶证培训、A2驾驶证培训、大车A1驾驶证培训、大车B2驾驶证培训,省心学车选这些

在苏州,驾驶证培训已成为成年人提升生活技能的热门选择,而规模适中、专注服务的小体量培训机构,因教学灵活、关注度高更受青睐。2025 年最新盘点,精选口碑突出的小型驾驶证培训机构,其中苏州从欢机动车贸易有限公…

2025佛山钢管厂家推荐榜:防腐钢管、大口径钢管、螺旋钢管工厂采购选型不踩坑

在工业制造、建筑装修、机械配套等领域,钢管作为基础材料的需求持续稳定,而小型钢管企业凭借灵活适配、精准服务的优势,成为众多采购方的优选。为帮助行业伙伴精准筛选靠谱合作方,本文整理 2025 年优质小型钢管企业…

不谈离散数学基本定理

本文半娱乐向半学术向 先列出定理:1.对于 \(\forall x,y \in \mathbb{Z},x<y\),有 \(x+1\le y\)2.\(\forall a,b\in\mathbb{Z},a<b,x>1\),则有 \(x^a<x^b\)3.\(\forall i\in\{1,2\cdots,n\},a_i\in\mat…

现代Linux网络命令简介

都是字符界面的、很小的。 iftop: /usr/sbin/iftop display bandwidth usage on an interface by host nethogs: /usr/sbin/nethogsNet top tool grouping bandwidth per process nload: /usr/bin/nloaddisplays the c…

深谈王书童变换

首先大家肯定都听过这个名字,毕竟发明者比较著名,他就是和鲍林,泡利三人能得三次诺贝尔奖的著名化学家王书童,不过他这个变换更多的应用于数学领域,所以大多人不太熟悉这个定理,就让我来给大家打通一下! 首先先…

众所周知,高中课内物理需要解微分方程

众所周知,解微分方程作为一种常用的方法是每一个高中生都要掌握的,所以物理课上讲二阶微分方程一点问题都没有吧。 著名物理老师 zjz 曾经说过:微积分,很重要,我带大家推一遍。 所以他就带大家推了一遍。 课内物理…

语文诗歌赏析好题集萃(纯纯的学术向)

QDEZ 某诗社的新社员一进社团就为社团提供了大量素材,让我们跟随他来看一下这些好诗好题,欢迎大家留言自己的答案。 (如有侵权请私聊作者)山火 烬收枝打电,霆动得炬手。 巧瞧焰蚁下,偶有挞痕牛。 午头有梧桐,遍惺…

11.7模拟赛

t1 题面 题意 给一个长为 \(n\) 的序列 \(h\),你要还原一个排列 \(p\)。其中对于任意 \(i\in[1,n]\) 满足 \(\exist \{p_{i},p_{i-1},p_{i+1}\}=h_i\)。求出 \(p\) 的种类数对 \(10^9+7\) 的答案。 对于 \(100\%\) 的…

code first 常用命令

记录一下,之前想找命令的时候找不到  ̄□ ̄|| Enable-Migrations 启用迁移 Add-Migration v_1_0_0 添加迁移 Update-Database 将迁移更新到数据库Update-Database -TargetMigration:v_1_0_0 数据库迁移新指定版本…

动态规划学习/复习笔记

(是时候通过写笔记的方式开始复建OI了) 写在前面:本篇笔记主要适用于有一点DP基础但是实力又比较弱的选手比如我,如果你的水平很高,请手动关闭这篇笔记。 树形DP的复习笔记 首先感觉树形DP属于是所有DP当中最简单的…

系统设计与分布式算法实战指南

本项目提供完整的系统设计核心算法实现,包含一致性哈希、负载均衡、限流算法等关键组件,涵盖Java和Python双语言版本,帮助开发者深入理解分布式系统设计原理与实践应用。系统设计与分布式算法实战指南 项目概述 本项…

SDOI 2024游记兼退役游记

SDOI Day1: NOIP2022被T2送走,NOIP2023被T3送走,万万没想到,SDOI Day1还能被T1送走,考场上提前了7分钟发卷,我光速浏览T1,感觉T1可做,想了一会觉得想出了无解条件先写一下,然后发现想错了,要有4种情况,觉得…

STM32G474单片机开发入门(六)定时器TIMER详解及实战含源码 - 教程

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …