hdu2080 夹角有多大Ⅱ

2024-03-09 01:44
文章标签 夹角 hdu2080

本文主要是介绍hdu2080 夹角有多大Ⅱ,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

设:原点O坐标(0,0),向量A坐标(x1,y1),向量B坐标(x2,y2),直线OA与OB的夹角度数等于 α;

由向量的数量积公式:

                                                A · B =  |A| * |B| * cosα

所以:

                                           cosα = (A · B) /  (|A| * |B|)

而A · B 和 |A| * |B| 都可由A、B的坐标计算得到,这样就得到了cosα的值,再用arcos函数反求一下cosα的值就能得到度数α是多少。

                                                A · B = x1*x2 + y1*y2

                                        |A| = 根号下(x1的平方 + y1的平方)               ( |B| 同理 )

ac不了,懒得排查了,就酱。

#include <iostream>
#include <cmath>
using namespace std;int main()
{const double PI = acos(-1.0);int N;cin>>N;int x1,y1,x2,y2;while (N--){cin>>x1>>y1>>x2>>y2;double dot_ab = x1*x2 + y1*y2;//数量积 A·Bdouble abs_ab = sqrt(x1*x1+y1*y1)*sqrt(x2*x2+y2*y2);// |A||B|double cos_ab = dot_ab/abs_ab;//cos的值double acos_ab = acos(cos_ab)*180.0/PI;//acoscout<<acos_ab;}}

这篇关于hdu2080 夹角有多大Ⅱ的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/789165

相关文章

计算时钟的夹角

题目内容: 钟面上的时针和分针之间的夹角总是在 0 ~180之间 ( 包括 0 和180 ) 。举例来说,在十二点的时候两针之间的夹角为 0 ,而在六点的时候夹角为180 ,在三点的时候为90 。本题要解决的是计算 12:00 到 11:59 之间任意一个时间的夹角。 输入格式: 每组测试数据包含两个数字:第一个数字代表小时 ( 大于 0 小于等于 12) ,第二个数字代表

OpenCV:已知三角形的两边 求夹角的问题(余弦定理)

// 找余弦角度: 线段pt0-pt1 和线段 pt0-pt2: double angle( Point pt1, Point pt2, Point pt0 ) {  double dx1 = pt1.x - pt0.x; double dy1 = pt1.y - pt0.y; double dx2 = pt2.x - pt0.x; double dy2 = pt2.y - pt0.

HDU2076 夹角有多大(题目已修改,注意读题)【水题】【计算几何】

夹角有多大(题目已修改,注意读题) Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 10194    Accepted Submission(s): 4072 Problem Descr

[Unity 3D] 求两个向量间的夹角的方法

1、 Vector3 d1 = transform.forward; Vector3 d2 = new Vector3(0,3,0); float angle = Vector3.Angle(d1, d2); 2、 Vector3 d1 = transform.forward; Vector3 d2 = new Vector3(0,3,0); float dot = Vector3.Dot(d1,

U-夹角有多大Ⅱ

掌握acos函数,用它处理cos值即可,cos值等于向量相乘除以他们的模的乘积,没了

java 三点求角度_求给定三个点的夹角

求给定三个点的夹角,其实是求$$$$两个向量之间的夹角$$\alpha$$。本文采用如下公式求解。 $$\cos{\alpha}=\frac{{A}\times{B}}{\|A\|\|B\|}$$ 源代码如下: double getAngleByThreeP(double pointx[3], double pointy[3]) { double a_b_x = pointx[0] - poin

POJ Space Ant (向量夹角)

http://poj.org/problem?id=1696 水。求出最大余弦值即可。 完整代码: /*0ms,548KB*/#include<cstdio>#include<cstring>#include<cmath>double x[55], y[55], dx, dy;bool vis[55];///单位化向量inline void dentity_vecto

Python根据3个点确定两个向量之间的夹角-180度到180方向进行矫正

import cv2 import numpy as np # 读取图片 image = cv2.imread(r'D:\dmp\cat.jpg') height, width = image.shape[:2] # 定义三个定位点(这里假设是图片上的坐标),分别表示原点,向量1终点,向量2终点,下例表示顺时针90度pts1 = np.float32([[100, 100], [

11、基于ROS的通过计算夹角实现点云中的地面部分提取

基于ROS的通过计算夹角实现点云中的地面部分提取 一、理论基础 首先将整个点云中的地面部分提取出来,这能有效减少点云数量,减少后面的聚类开销。采用激光扫描到障碍物和地面的夹角不同的原理进行提取,具体如下: 激光扫描到地面点障碍物点判断示意图情况下所示: 激光未扫描到障碍物地面点时候,θ角很小(地面有一点坡道),甚至为0(平坦地面),激光未扫描到地面障碍物点示意图如下: 两个相邻激光线