![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
模拟退火
H_ang
记录一些东西吧!
展开
-
[FJOI2015]最小覆盖双圆问题 - 最小圆覆盖+坐标系旋转
题目链接:https://ac.nowcoder.com/acm/problem/19959题目大意:思路:我们考虑有一条直线把这些点,分割成两个部分。分别做一个最小圆覆盖。半径取max(R1, R2)。我们可以考虑旋转坐标系来枚举直线的斜率。那么对一条特定的坐标系。按坐标轴就可以二分一下。得到最优的半径。只要旋转180度就够了。#include<bits/stdc++.h&g...原创 2020-02-27 19:36:31 · 301 阅读 · 1 评论 -
2018 ACM 上海大都会赛重现赛 A Fruit Ninja-随机算法
题目链接:https://ac.nowcoder.com/acm/problem/17376题目大意:给你n个点。问算法存在至少有M个点在一条直线上。M/N>=x。X为只有一位小数的实数。思路:我们假设存在。那么M>=0.1n。每次选择两个点至少有0.01的可能性选择到。当然这是最坏复杂度。我们随机找200次如果还不能找到就No。#include <bits/stdc...原创 2020-02-24 21:37:20 · 174 阅读 · 0 评论 -
POJ3318-随机算法-O(N*N)判断矩阵A*B=C
题目链接:http://poj.org/problem?id=3318题目大意:多样例。给你3个nn的矩阵A, B,C。问AB=C是否成立。成立输出YES。不成立输出NO。并且题目提示O(N^3)复杂度会T。暴力肯定是O(N^3)。我们可以随机化一个N1的矩阵D。如果AB=C。那么ABD=CD并且BD的复杂度为O(N ^ 2)得到一个N1的矩阵再和A相乘也是O(N ^ 2)。CD的复杂度...原创 2020-02-24 21:30:02 · 1417 阅读 · 1 评论 -
模拟退火 P1337 [JSOI2004]平衡点 / 吊打XXX
题目链接:https://www.luogu.org/problem/P1337题目大意:模拟退火模板题。#include<bits/stdc++.h>#define LL long longusing namespace std;struct node{ int x, y, w;}a[10005];int n, sx=0, sy=0;double an...原创 2019-09-05 19:40:58 · 146 阅读 · 0 评论 -
模拟退火 poj 2420 找到一个点使这个点到其他点的距离和最小
题目链接:http://poj.org/problem?id=2420题目大意:给n个点,找出一个点,使这个点到其他所有点的距离之和最小,也就是求费马点。这个点不要求在给出的点中找。#include<cstdio>#include<cstring>#include<algorithm>#include<iostream>#includ...原创 2019-09-05 19:44:52 · 1105 阅读 · 0 评论 -
2018-ACM-ICPC 南京 D. Country Meow 模拟退火
题目链接:https://nanti.jisuanke.com/t/A2141题目大意:三维空间有n个点,找到另外一个点,离所有点的最大距离最小。求这个距离。和之前的模拟退火的坐标构造方法不同。初始化0,0,然后每次向最远的点移动一定的距离#include <bits/stdc++.h>using namespace std;double x[105], y[105], z[...原创 2019-09-11 11:37:12 · 218 阅读 · 0 评论