国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

爬山算法、模擬退火算法

2019-11-08 02:48:32
字體:
來源:轉載
供稿:網友

參考:http://www.cnblogs.com/heaad/archive/2010/12/20/1911614.html#!comments

http://blog.csdn.net/acdreamers/article/details/10019849

1、POJ 2420 A Star not a Tree?

#include <iostream>#include <cstdio>#include <cstring>#include <cstdlib>#include <algorithm>#include <queue>#include <vector>#include <stack>#include <map>#include <set>#include <cmath>#include <cctype>#include <ctime>#include <cassert>using namespace std;#define REP(i, n) for (int i = 0; i < (n); ++i)#define eps 1e-9typedef long long ll;typedef pair<int, int> Pair;const int INF = 0x7fffffff;const int maxn = 100 + 10;struct Node {    double x, y;};int n;int dir[][2] = {{1, 0}, {-1, 0}, {0, 1}, {0, -1}};Node node[maxn];double x_sum = 0.0, y_sum = 0.0, x_average = 0.0, y_average = 0.0;double dis(Node a, Node b);double get_sum(Node a);double Search(void);int main() {#ifdef __AiR_H    freopen("in.txt", "r", stdin);#endif // __AiR_H    scanf("%d", &n);    REP(i, n) {        scanf("%lf %lf", &node[i].x, &node[i].y);        x_sum += node[i].x; y_sum += node[i].y;    }    x_average = x_sum / n; y_average = y_sum / n;    PRintf("%.0f/n", Search());#ifdef __AiR_H    printf("Time used = %.2fs/n", (double)clock() / CLOCKS_PER_SEC);#endif // __AiR_H    return 0;}double Search(void) {    Node start, t; start.x = x_average; start.y = y_average;    double T = 100.0, ans = get_sum(start), ans_t;    while (T > eps) {        bool flag = true;        while (flag) {            flag = false;            REP(i, 4) {                t.x = start.x + dir[i][0] * T; t.y = start.y + dir[i][1] * T;                ans_t = get_sum(t);                if (ans_t < ans) { ans = ans_t; start = t; flag = true; }            }        }        T *= 0.9;    }    return ans;}double get_sum(Node a) {    double ret = 0.0;    REP(i, n) { ret += dis(node[i], a); }    return ret;}double dis(Node a, Node b) {    return sqrt((a.x - b.x) * (a.x - b.x) + (a.y - b.y) * (a.y - b.y));}


上一篇:PAT 1005

下一篇:時間函數

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新疆| 石景山区| 临江市| 霍山县| 鄢陵县| 静乐县| 桃园县| 杨浦区| 若尔盖县| 黑山县| 涟源市| 石城县| 汝州市| 德阳市| 阳山县| 乐山市| 禹州市| 昌邑市| 临海市| 河北省| 禄丰县| 安义县| 屏边| 开封市| 榆社县| 宜章县| 商河县| 通辽市| 旺苍县| 邛崃市| 武山县| 白朗县| 洛隆县| 北海市| 兴安县| 吴忠市| 东辽县| 隆化县| 若尔盖县| 横山县| 湘乡市|