POJ 1380 坐标旋转
题意:
问第二个矩形能不能放进第一个矩形中。
题解:
暴力旋转第二个矩形,判断左右、上下是否同时小于第一个矩形
当然,数学推导也可以,挺简单的相似神马的胡搞就行~
1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 #include <cstdlib> 5 #include <algorithm> 6 #include <cmath> 7 8 #define PI 3.141592653589793 9 #define EPS 1e-7 10 11 using namespace std; 12 13 struct PO 14 { 15 double x,y; 16 }sma,big; 17 18 inline int doublecmp(double x) 19 { 20 if(x>EPS) return 1; 21 else if(x<-EPS) return -1; 22 return 0; 23 } 24 25 inline PO rotate(PO &a,double hd) 26 { 27 PO c; 28 c.x=a.x*sin(hd)-a.y*cos(hd); 29 c.y=a.x*cos(hd)+a.y*sin(hd); 30 return c; 31 } 32 33 inline bool go() 34 { 35 scanf("%lf%lf%lf%lf",&big.x,&big.y,&sma.x,&sma.y); 36 double du=0.0;PO c; 37 while(du*2<PI) 38 { 39 c=rotate(sma,du); 40 c.x+=2.0*sma.y*cos(du); 41 if(doublecmp(big.x-c.x)>=0&&doublecmp(big.y-c.y)>=0) return true; 42 if(doublecmp(big.y-c.x)>=0&&doublecmp(big.x-c.y)>=0) return true; 43 du+=0.002; 44 } 45 return false; 46 } 47 48 int main() 49 { 50 int cas; scanf("%d",&cas); 51 while(cas--) 52 { 53 if(go()) printf("Escape is possible.\n"); 54 else printf("Box cannot be dropped.\n"); 55 } 56 return 0; 57 }
转载于:https://www.cnblogs.com/proverbs/archive/2013/02/24/2924591.html
POJ 1380 坐标旋转相关推荐
- 从几何与代数的角度推算坐标旋转变换矩阵(以2维为例)
坐标旋转变换矩阵,大家都不陌生.我也常常使用,但是经常不确定每个元素的位置是否正确.以下从几何和代数的角度再推一边,方便自己以后来看. 以下是本文要用到的图,图中所示了两个坐标系OXY, oxy,及1 ...
- Fractal Streets(经典分形递归+坐标旋转)
原题链接:Fractal Streets 题面: 思路: 本题关键要解决:求编号为MMM的房屋在NNN级城市中的位置.把该问题记为 calc(N,M)calc(N, M)calc(N,M) ,本题就是 ...
- 二维,三维坐标旋转,左右手坐标系
1.向量旋转矩阵和坐标旋转矩阵区别 坐标旋转: 坐标旋转对应的是点在另一个坐标系的位置,设点A在xoy中为(x,y),在坐标系x'oy'下坐标是(x',y'),旋转角度由x向y,逆时针旋转.则他们关系 ...
- Matlab中完成图像旋转(坐标旋转)
Matlab中完成图像旋转(坐标旋转) 通过极坐标的转化,将点阵进行旋转,得到旋转后点阵的坐标并绘制出来,以下为代码. y=xlsread("D:\temp\meigu\tianran\un ...
- python 图像旋转与坐标旋转
1.图像旋转 image1=image1.rotate(angle) 或 np.rot90() 2.坐标旋转 一.首先来说一下关于像素旋转一定角度后的对应位置: (1)旋转中心为左上角原点: 旋转有一 ...
- 一定要搞明白坐标旋转与坐标系旋转的区别
之前想明白过,隔了一段时间没看,现在又忘记了.重新复习一下. 这篇博客写的很明白 推公式的话从坐标旋转开始推,容易理解,又容易推导. 1.坐标系中点的旋转的旋转矩阵 x'=rcos(α+β) = r( ...
- poj 2187(旋转卡壳)
传送门 模板题,求凸包,用旋转卡壳求出最远点对. 因为把int弄成double,WA了好几次,差点对idy大神给的模板失去信心...不过事实证明idy的写法没问题,orz! #include<c ...
- matlab坐标旋转平移缩放,MATLAB实现RGB图像的平移、缩放和旋转
Func的1 2 3分别对应平移.旋转.缩放功能 function []=transition(func,I) if func==1 delta_x=str2double(inputdlg('请输入向 ...
- java坐标旋转算法,C程序,从旋转度获得笛卡尔坐标
我在工作应用程序上工作的时间太长了......而且很久以前就毕业了:)最近我一直在编写一个使用C的小型机器人模拟(虽然这个问题比C更算数学/算法)我有两个单位(坦克机器人)从比赛场地的X和Y坐标开始 ...
最新文章
- 基于NVIDIA GPUs的深度学习训练新优化
- Python 中的locals()
- Oracle Eneterprise Linux 5.8上安装Database 12c
- numpy---(精简)
- UE4 HTC VIVE - 番外篇 - 局域网联机三
- c语言学生管理系统常见问题,关于C语言学生管理系统问题
- sqlexception: default 和 null 不允许作为显式标识值_我都把MySql啃得这么透彻了,你还不进来看一下吗?...
- Bailian2689 大小写字母互换【文本】(POJ NOI0107-14)
- zsh fg: no job control in this shell.
- (软考中级--信息安全工程师)三、密码学基本理论
- java itext 页边距_iText的用法
- Java---计算器(标准计算器,科学计算器)的实现
- ios 苹果手机适配代码
- 修改版本名称及手机型号
- 碱基数据处理中的算法研究
- 架构之重构的 12 条军规
- 2021-2027全球与中国草坪和花园耗材市场现状及未来发展趋势
- Android Studio从gthub上导入新项目的时候,R文件丢失的问题
- 阿里云国际版回执消息简介与配置流程
- 【论文精读】Natural Image Stitching Using Depth Maps
热门文章
- php 删除单个文件大小,php删除指定大小的jpg文件
- java 字符码_Java字符编码
- oj系统格式错误_论文查重会不会检查格式?【paperpp吧】
- 160 - 28 CoSH.2
- C++语法:构造函数以及析构函数
- aes模式_AES的完整形式是什么?
- Java LinkedHashMap getOrDefault()方法与示例
- linux ida 图形界面,linux – IDA在屏幕内不起作用
- java解析xml中文字符乱码_各种Java中文乱码的处理方法
- 兰州交通大学C语言课程设计,兰州交通大学C语言课程设计报告(完整版).doc