您的位置:首页 > 娱乐 > 八卦 > 城阳疫情最新消息_乌克兰服务器_seo项目_如何做好网络推广工作

城阳疫情最新消息_乌克兰服务器_seo项目_如何做好网络推广工作

2025/2/27 21:13:49 来源:https://blog.csdn.net/u013313909/article/details/143056057  浏览:    关键词:城阳疫情最新消息_乌克兰服务器_seo项目_如何做好网络推广工作
城阳疫情最新消息_乌克兰服务器_seo项目_如何做好网络推广工作

A Star not a Tree?

#include <bits/stdc++.h>
using namespace std;
int t, n;
struct node
{double x, y;
}cur, np;
node a[110];
double ans, dt;
double rand(double l, double r)
{return (double)rand()/RAND_MAX*(r-l)+l;
}
double calc(node p)
{double sum=0;for(int i=1; i<=n; ++i){sum+=sqrt((p.x-a[i].x)*(p.x-a[i].x)+(p.y-a[i].y)*(p.y-a[i].y));}ans=min(ans, sum);return sum;
}
void simulate_anneal()
{cur.x=rand(0, 10000);cur.y=rand(0, 10000);for(double t=1e4; t>=1e-4; t*=0.99){np.x=rand(cur.x-t, cur.x+t);np.y=rand(cur.y-t, cur.y+t);dt=calc(np)-calc(cur);if(exp(-dt/t)>rand(0, 1)){cur=np;}}
}
int main()
{srand(time(0));scanf("%d", &t);while(t--){ans=1e9;scanf("%d", &n);for(int i=1; i<=n; ++i){scanf("%lf %lf", &a[i].x, &a[i].y);}for(int i=1; i<=100; ++i){simulate_anneal();}printf("%.0lf\n", ans);if(t!=0){printf("\n");}}return 0;
} 

P1166 打保龄球

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com