无题的题 & 模拟退火...】的更多相关文章

题意: 给你不超过8条一端在圆心的半径,求他们组成的凸包的最大面积. SOL: 正解怎么搞啊不会啊...然后昨天毛爷爷刚讲过模拟退火...那么就打一个吧... 然后就T了,不过三角形的部分分妥妥的... 然后在自信的协助下被他改了改参数然后过了九个点...(对着数据调参也是醉了... 剩下一个点感觉没法搞啊QAQ...差太多了...感觉退完火爬爬山应该会很兹瓷... 90分code: /*======================================================…
1.4.5.6.10都是op=1的点,除4外直接通过模拟退火调参可以全部通过. #include<cmath> #include<ctime> #include<cstdio> #include<cstdlib> #include<algorithm> #define rep(i,l,r) for (int i=(l); i<=(r); i++) using namespace std; ; int n,m,K,op,ans,u,v,t[N…
好的,在h^ovny的安利下做了此题 模拟退火中的大水题,想当年联赛的时候都差点打了退火,正解貌似是三分套三分,我记得上一道三分套三分的题我就是退火水过去的... 貌似B班在讲退火这个大玄学... 这题还是比较简单的啦~ 随机化坐标x,y就可以啦 然而格式错了n遍.....死的心都有了 最后输出是四舍五入!!!四舍五入!!!四舍五入!!! 两组答案中间有空行!!!有空行!!!有空行!!!   然后只要会退火的板子就可以啦 //LevenKoko#include<bits/stdc++.h> u…
Codeforces Beta Round#2 http://codeforces.com/contest/2 A 模拟题 #include<bits/stdc++.h> using namespace std; typedef long long ll; map<string,ll>mp; struct sair{ string str; int id; ll num; }a[]; bool cmp(sair a,sair b){ if(a.num==b.num) return…
题意简述 给你一个\(n\)个节点的无向图\(G=\{V,E\}\)的邻接矩阵\(g\)和每个点的点权为\(s_i\),且\(\sum_{i=1}^n s_i = K\),要你求出\(\mathrm{max} \{ \sum_{u,v \in E} s_u \times s_v\}\) 做法 设两个不相邻的点\(u\),\(v\)的点权为\(s_u\)和\(s_v\),令\(a_u = \sum_{g[u][i]=1} s_i, a_v=\sum_{g[v][i]=1} s_i\),此时这对点\…
为了补这题,特意学了下模拟退火算法,感觉算法本身不是很难,就是可能降温系数,步长等参数不好设置. 具体学习可以参见: http://www.cnblogs.com/heaad/archive/2010/12/20/1911614.html  我认为讲的很不错,通俗易懂. 这题设置一个step为1,降温系数为0.99,因为系数越大,得到最优解的概率越大,虽然可能会慢一点.因为是三维的,所以往八个方向扩展找邻域解,然后遇到比他优的解一定接受. 代码:(参照网上代码) #include <iostre…
3680: 吊打XXX Time Limit: 10 Sec  Memory Limit: 128 MBSec  Special JudgeSubmit: 3192  Solved: 1198[Submit][Status][Discuss] Description gty又虐了一场比赛,被虐的蒟蒻们决定吊打gty.gty见大势不好机智的分出了n个分身,但还是被人多势众的蒟蒻抓住了.蒟蒻们将 n个gty吊在n根绳子上,每根绳子穿过天台的一个洞.这n根绳子有一个公共的绳结x.吊好gty后蒟蒻们发现…
点此看题面 大致题意: 一个平面上有\(n\)个点,每个点有1个权值,现在要选择平面上的一个点,使这\(n\)个点的权值乘上到达选定点的距离之和最小. 模拟退火 我们可以用模拟退火来做这道题. 先将\((0,0)\)设定为答案,随后不断选取一个新的坐标,比较选择该点时的代价与当前答案的代价.若小于当前答案的代价,则更新答案,否则,将有一定概率更新答案(更新坐标的幅度随时间的增大而减小,更新答案的概率随时间的增大以及两个代价之差的增大而减小). 只要多模拟退火几遍,或者保持一颗虔诚的心,就能过了.…
---恢复内容开始--- Description Given a 3-dimension ellipsoid(椭球面) your task is to find the minimal distance between the original point (0,0,0) and points on the ellipsoid. The distance between two points (x 1,y 1,z 1) and (x 2,y 2,z 2) is defined as    Inp…
洛谷P1337 [JSOI2004]平衡点 / 吊打XXX 基本上是照着别人的代码写的,模拟退火为什么一定能找到答案呢...迷惑,,有时间搜一搜证明啥的 sa步骤:这个是要确定一个(xi,yi)使得函数()值最小,所以先选一个开始的点(这里选的是所有桌子上的点的均值),然后(rand()*2-RAND_MAX)*T就是deltax,deltay,然后再算出移动了这个delta后的函数值,该函数值如果是一个更小的值,则接受,否则如果( exp(-delta/T)*RAND_MAX>rand() )…