hdu 4998 Rotate(计算几何)

使用Python爬虫抓取政府网站政务信息:公告、通知的自动化抓取与分析 通过结合Requests、BeautifulSoup、Selenium等技术,你能够高效地抓取政府网站的数据,并通过MySQL存储与Pandas分析这些数据。通过自动化手段抓取这些信息,不仅可以提高数据收集的效率,还能够实时获取最新的政务动态,为政策研究、舆情分析等提供宝贵数据。我们将通过Python的Requests、BeautifulSoup、Selenium等工具,结合最新的技术实现一个完整的爬虫系统,帮助你轻松抓取并分析政务信息。通过爬虫,我们可以自动化地从指定网站上抓取公告、新闻、通知等信息。 阅读详情

题目链接:

http://acm.hdu.edu.cn/showproblem.php?pid=4998

解题思路:

题目大意:给定n个点和n个角度,平面内任意一个点依次以这些点Point(i)为旋转中心,逆时针旋转 R(i)度,求最后相当于绕哪个点旋转多少度,求这个点的坐标以及旋转的角度。

算法思想:

一个点(x,y)绕另外一个点(x0,y0)旋转 r0 度的公式为:

x1= (x - x0)*cos(r0) - (y - y0)*sin(r0)  + x0 ;

y1= (x - x0)*sin(r0) + (y - y0)*cos(r0) + y0 ;

最后旋转点肯定是xx,tmp1的垂直平分线以及由yy,tmp2的垂直平分线的交点,旋转角度rad = (r1+r2+.....+rn)%(2*pi)。

最后直接套模板即可。。。http://blog.youkuaiyun.com/piaocoder/article/details/47403265

AC代码:

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <cmath>
using namespace std;

const double eps = 1e-5;
const double pi = acos(-1.0);

struct Point{
    double x,y;
    Point(double x = 0,double y = 0):x(x),y(y){} // 构造函数,方便代码编写
};
typedef Point Vector;

Vector operator + (Vector A,Vector B){
    return Vector(A.x+B.x,A.y+B.y);
}

Vector operator - (Vector A,Vector B){
    return Vector(A.x-B.x,A.y-B.y);
}

Vector operator * (Vector A,double p){
    return Vector(A.x*p,A.y*p);
}

Vector operator / (Vector A,double p){
    return Vector(A.x/p,A.y/p);
}

double Dot(Vector A,Vector B){
    return A.x*B.x+A.y*B.y;
}

double Length(Vector A){
    return sqrt((Dot(A,A)));
}

double Cross(Vector A,Vector B){
    return A.x*B.y-A.y*B.x;
}

Vector Rotate(Vector A,double rad){
    return Vector(A.x*cos(rad)-A.y*sin(rad),A.x*sin(rad)+A.y*cos(rad));
}

Vector Normal(Vector A){
    double L = Length(A);
    return Vector(-A.y/L,A.x/L);
}

Point GetLineIntersection(Point P,Vector v,Point Q,Vector w){
    Vector u = P-Q;
    double t = Cross(w,u)/Cross(v,w);
    return P+v*t;
}

int main(){
    int T;
    scanf("%d",&T);
    while(T--){
        int n;
        scanf("%d",&n);
        Point xx(-1,0),yy(1,0);
        Point tmp1 = xx,tmp2 = yy,tmp3;
        double x, rad = 0;
        for(int i = 0; i < n; i++){
            scanf("%lf%lf%lf",&tmp3.x,&tmp3.y,&x);
            tmp1 = Rotate(tmp1-tmp3,x)+tmp3;
            tmp2 = Rotate(tmp2-tmp3,x)+tmp3;
            rad += x;
        }
        Point tt1 = (xx+tmp1)/2, tt2 = (yy+tmp2)/2;
        Vector v1,v2;
        v1 = Normal(tmp1-xx);v2 = Normal(tmp2-yy);
        Point ans = GetLineIntersection(tt1,v1,tt2,v2);
        while(rad > 2*pi)
            rad -= 2*pi;
        printf("%.10lf %.10lf %.10lf\n",ans.x,ans.y,rad);
    }
    return 0;
}


Flutter 自适应布局一套代码适配手机和平板(12) 通过LayoutBuilder组件动态检测屏幕尺寸,根据宽度阈值(600px)选择不同布局方式。在小屏幕上显示单页联系人分组,大屏幕采用侧边栏+详情面板的并排布局。核心实现包括:1)使用LayoutBuilder获取父容器约束条件;2)定义大屏幕和小屏幕的布局断点;3)构建响应式界面组件,其中大屏幕布局采用Row横向排列固定宽度侧边栏和弹性宽度的详情区域。这种方案可确保应用在不同设备上都能提供最佳显示效果。 阅读详情

相关推荐

在边缘部署实时视觉应用程序

克隆代码库后,压缩源文件夹的内容,并将生成的存档文件上传到上一节中创建的 S3 存储桶中。在本教程中,我们将使用 AWS Greengrass,因为它支持大多数 Windows 和 Linux 设备,包括我们的目标 Jetson AGX Xavier。此外,模型还可以量化到更低的精度,从而加快推理速度,但对于较大的模型,此过程通常较长(约 45 分钟)。本例中的脚本只是启动一个 Bash 环境,切换到解压后的构件目录,最后使用所需的命令行参数运行 Deepstream 应用。每个模型类型都有其独有的格式。

2501_91623519的博客 1281

hdu4998 旋转坐标系

题意:       一开始的时候有一个坐标系(正常的),然后有n个操作,每个操作是 x y d,意思是当前坐标系围绕x,y点逆时针旋转d度,最后让你输出三个数x y d,把这n个操作的最后结果,用一步等效过来,就是找到一个点,逆时针旋转一个度数,等于当前的这个状态。 思路:       我们可以用一个向量来代表当前坐标系,每次操作把当前向量拆成两个点单独操作,假如当前向量a,b,绕点c旋

天使也掉毛 597

hdu 4998(解析几何)

题意:一个人要围绕一个点逆时针旋转p1弧度,然后继续围绕下一个点逆时针旋转p2弧度,旋转n次,给出了n个点的坐标和每次旋转的角度,问n次旋转后相当于围绕着哪个点旋转多少弧度,输出它的坐标和度数。弧度不超过2π。 题解:几何题还是要靠公式。。。先总结一个点(x0,y0)围绕圆心(a,b)逆时针旋转p度后的坐标(x,y)的解法。  x = a + (x0 - a) * cos(p) - (y0 -

俯瞰风景 688

HC32 CAN通信

qqa

zhaopenglihui的博客 5431

Windows游戏玩家必看:用Process Lasso优化CPU优先级和核心绑定,告别卡顿

本文为Windows游戏玩家详细介绍了如何使用Process Lasso优化系统性能。通过设置CPU优先级和核心绑定,可以智能管理进程资源,确保游戏获得最高调度权限,有效减少因后台程序干扰或Windows调度机制不完善导致的卡顿与帧数波动,从而提升游戏流畅度与稳定性。

weixin_29299807的博客 2215

HDU 4998 Rotate

Rotate Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 1116    Accepted Submission(s): 503 Special Judge Problem Description Noting is m

大咸鱼。。。 446

LLaVA-1.5:多模态视觉问答新突破

LLaVA-1.5在多模态视觉问答(VQA)任务中取得了显著进展,主要得益于视觉-语言连接器的优化和特定任务数据集的增加。通过将连接器升级为两层MLP,模型在处理视觉与语言关系时表现更佳。同时,引入如OKVQA、OCRVQA等数据集,增强了模型在复杂视觉推理任务中的能力。在11个基准测试中,LLaVA-1.5超越了现有方法,展示了其强大的多模态能力。此外,模型通过提升输入图像分辨率、扩展语言模型和改进多语言能力,进一步提升了性能。尽管在短格式回答任务中初期表现不佳,但通过调整提示格式和微调,其性能显著提升

weixin_57060548的博客 945

HDU 4998 Rotate(计算几何 绕点旋转)

HDU 4998 Rotate(计算几何 绕点旋转)

2683

从零到多智能体:Google Agent开发套件(ADK)入门指南

ADK促进自定义工具生产的能力是其优势之一。本质上,工具只是一个带有描述性文档字符串的Python函数。

独立开发,substack顶级编辑 2489

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

hdu 4998 简单计算几何

题意: 平面旋转,每次整个二维平面旋转绕一个点P,转弧度rad。 n次旋转后,累加起来的旋转等于绕点Q,弧度Qrad,求Q和Qrad。 解析: 假设两个点去转,然后求交点,求弧度就行了。 最后钝角判断没加会wa。 /////////////////////////////// if (Cross(t1, t2) < 0) {

渐近自由 693

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

hdu4998 Rotate【计算几何】

Noting is more interesting than rotation!  Your little sister likes to rotate things. To put it easier to analyze, your sister makes n rotations. In the i-th time, she makes everything in the plane

wybooooooooo的博客 203

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

HDU 4998 Rotate 计算几何

当题意就是一个物体每次绕着一个点旋转一个角度,旋转n次后等价于从开始状态绕一个点旋转一定角度后直接到达最终状态。求这个点的坐标和旋转角度。 当时做的时候就自己yy了一个做法就在那搞,,没想到居然过了,现在来看我都有点佩服自己当时是怎么想的了。 #include #include #define PI 3.1415926535 struct s { double xx,yy; }; s

Merc_A的专栏 684

HDU 4998 Rotate (计算几何)

HDU 4998 Rotate (计算几何) 题目链接http://acm.hdu.edu.cn/showproblem.php?pid=4998 Description Noting is more interesting than rotation! Your little sister likes to rotate things. To put it easier to analyze,...

weixin_30690833的博客 127

hdu 4998 Rotate 计算几何 点的旋转

Rotate Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 960    Accepted Submission(s): 448 Special Judge Problem Description Noting

lois_123的专栏 611

hdu4998 Rotate(计算几何+模拟)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4998 题目大意: n次旋转,每一次以(x,y)为中心点旋转弧度p。问最终旋转的效果相当于是围绕哪个点旋转弧度P? 输出这个点坐标以及旋转的弧度P 解: 这题就是模拟做的,因为数据量不大。模拟做就是写起来麻烦。 因为用的旋转模板是逆时针旋转,但最后求的P是在三角形里求解出来的,这样的P一定小

no2015214099的博客 320

HDU - 4998 Rotate (计算几何—绕点旋转)

Rotate Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 1467    Accepted Submission(s): 642Special Judge Problem Description Noting is more in...

GYH0730的博客 507

HDU 4998 Rotate 计算几何 2014 ACM/ICPC Asia Regional Anshan Online

HDU 4998 Rotate 计算几何 2014 ACM/ICPC Asia Regional Anshan Online 题意: 有一个平面放在一个二维坐标轴上 给定n个操作 (x,y) p 表示把平面绕着(x,y) 逆时针转p弧度。 最后的结果相当于平面绕着(X, Y) 逆时针旋转了P弧度。 求:X,Y,P #include #include #include #include #include typedef long long ll; using namespace std; const

九野的博客 2540

HDU 4998 Rotate(计算几何)2014年鞍山赛区网络赛

Rotate                                                                           Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)

LYHVOYAGE的专栏 2505

HDU 4998 Rotate(计算几何/绕弧度旋转/模板的巧用)

传送门 题意: 给你一些点的坐标和绕每个点旋转的弧度值,现在假设有一个平面,依次按照以每个点为圆心逆时针旋转每个给出的弧度值,问你经过这么多次旋转之后相当于绕哪个点逆时针旋转了多少弧度。 思路: 这道题还是比较好的,数据量比较小,想到暴力的方法把它模拟出来就能过。 那么我们要考虑怎样模拟。 题中点的范围在(0,0)~(100,100)之间,考虑到要确定一个平面,只需要三个不在同

protecteyesight的博客 572

HDU4998Rotate(矩阵变换)

题目大意:HDU4998Rotate(矩阵变换) 题目大意:要求你将一个图形每次绕

1069

HDU 4998 Rotate

hdu 4998 计算几何

Tc的专栏 1542

Rotate

hdu4998:http://acm.hdu.edu.cn/showproblem.php?pid=4998 题意:给你n个点,以及绕每个点旋转的弧度。然后,问你经过这n次旋转,平面中的点总的效果是相当于哪个点旋转了多少弧度。 题解:我的第一道计算几何。可以选两个点,求出旋转之后的对应点,然后分别求出这两个点的中垂线,中垂线的交点就是要求的点,弧度就是所有弧度之和mod(2*pi) ...

weixin_30393907的博客 163
上一篇: hdu 4707 Pet(深搜)
下一篇: hdu 5001 Walk(概率dp+搜索,矩阵快速幂)
yphacker
博客等级 码龄12年 199粉丝 540原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值