poj2354Titanic(两点的球面距离)】的更多相关文章

链接 球面距离计算公式:d(x1,y1,x2,y2)=r*arccos(sin(x1)*sin(x2)+cos(x1)*cos(x2)*cos(y1-y2)) x1,y1是纬度\经度的弧度单位,r为地球半径   把有用的信息从恶心的字符串中提取出来,然后套公式,再处理下恶心的精度,得出的距离需要四舍五入. #include <iostream> #include<cstdio> #include<cstring> #include<algorithm> #i…
题意: 给出两点的经纬度,求两点的球面距离与直线距离之差. 解法: 我们先算出球面距离,然后可以根据球面距离算出直线距离. 球面距离公式: R*acos(sin(W1)*sin(W2)+cos(W1)*cos(W2)*cos(J1-J2));   ( W1,W2 为两点的纬度值,J1,J2为两点的经度值 ) 推导过程就不写了,网上可以查到很明确的推导过程. 然后算出了球面距离,其实就是一段弧,根据弧长求弦长: 代码: #include <iostream> #include <cstdi…
题意:从地球上的一个点到另一个点,求两点的球面距离和直线距离之差.假定地球是正球体,半径为6371009米. #include<iostream> #include<cmath> #define r 6371009 #define pi 2.0*asin(1.0) using namespace std; double ang(double lt1,double lt2,double lg1,double lg2) { return acos(cos(lt1)*cos(lt2)*c…
#include <iostream> #include <cmath> using namespace std; #define eps 1e-10 /********** 定义点 **********/ struct Point{ double x,y; Point(,):x(x),y(y) {} }; /********** 定义三维点 ***********/ struct Point3{ double x,y,z; Point3(,,):x(x),y(y),z(z) {}…
原文:[百度地图API]如何根据摩卡托坐标进行POI查询,和计算两点距离 摘要: 百度地图API有两种坐标系,一种是百度经纬度,一种是摩卡托坐标系.在本章你将学会: 1.如何相互转换这两种坐标: 2.使用该坐标进行反地址解析: 3.坐标附近全部POI的查询: 4.计算两点间的距离. ------------------------------------------------------------------------------ 最终画面效果图 百度地图API常用两种坐标系,一是球面坐标…
<?php /** * 计算两点地理坐标之间的距离 * @param Decimal $longitude1 起点经度 * @param Decimal $latitude1 起点纬度 * @param Decimal $longitude2 终点经度 * @param Decimal $latitude2 终点纬度 * @param Int $unit 单位 1:米 2:公里 * @param Int $decimal 精度 保留小数位数 * @return Decimal */ functi…
最近在研究和制作数字示波器,其中涉及一个小算法:需要将 ADC 采样的数值在 TFT LCD 屏幕上面显示并且用“线”连接起来. ADC 按照时序对输入电压采样后,记录的是一个个的数值,如果显示的时候不用“线”连接它们,那么他们看上去就是这样的: 用直线连接以后,看上去就是这样了(垃圾 LM324 运放的模拟前端,方波波形变形严重到令人发指): X 轴(时间轴)的放大比率确定以后,ADC 采样值的相邻 2 点在屏幕上的间距也就确定了,连线算法要做的事情,就是将位于这两点间的直线上的 LCD 小点…
--通过经纬度计算两点之间的距离 create FUNCTION [dbo].[fnGetDistanceNew] --LatBegin 开始经度 --LngBegin 开始维度 --29.490295,106.486654,29.615467, 106.581515 (), ),)) Returns real AS BEGIN --转换location字段,防止字段太长.影响SQL美观 declare @LatBegin REAL declare @LngBegin REAL declare…
原题:http://acm.hdu.edu.cn/showproblem.php?pid=2376 经典问题,求的是树上任意两点和的平均值. 这里我们不能枚举点,这样n^2的复杂度.我们可以枚举每一条边,设这条边的端点分别为A.B,则通过这条边的路径总数为与A点相连的端点数乘以与B点相连的端点数,再乘以这条边的权值,将所有的和相加,最后除以n*(n-1)/2就可以了(除以2是因为这里每条边重复计算了两次). 这里统计求和的时候,一遍深搜就可以了,需要注意的是,假设某个点子树所包含点的个数为k,则…
题目链接:http://codeforces.com/problemset/problem/459/A 题目大意: 给出两个点(在坐标轴中),求另外两个点从而构成一个正方形,该正方形与坐标轴平行. 如果给的点构不成与坐标轴平行的正方形,则输出 -1. 两点范围: x1, y1, x2, y2 ( - 100 ≤ x1, y1, x2, y2 ≤ 100) .所求两点范围: x3, y3, x4, y4 ( - 1000 ≤ x3, y3, x4, y4 ≤ 1000). 解题思路: 给出两个点,…