Symmetry(对称轴存在问题)】的更多相关文章

Symmetry Time Limit:3000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu Description   The figure shown on the left is left-right symmetric as it is possible to fold the sheet of paper along a vertical line, drawn as a dashed line, and to cut…
Description After taking a modern art class, Farmer John has become interested in finding geometric patterns in everything around his farm. He carefully plots the locations of his N cows (2 <= N <= 1000), each one occupying a distinct point in the 2…
题目链接:fzu 2035 Axial symmetry 题目大意:给出n个点,表示n边形的n个顶点,判断该n边形是否为轴对称图形.(给出点按照图形的顺时针或逆时针给出. 解题思路:将相邻两个点的中点有序的加入点集,即保证点是按照图形的顺时针或逆时针出现的,然后枚举i和i + n两点的直线作为对称轴.判断其他所有点是否对称即可. #include <stdio.h> #include <string.h> #include <stdlib.h> #include <…
题意:平面上给若干点,问它们是不是关于某垂直于x轴的直线对称. 代码:(Wrong Answer, –ms) //UVa1595 - Symmetry #include<iostream> #include<vector> #include<algorithm> using namespace std; struct point { int x, y; bool operator <(point& that)const { if (y == that.y)…
1595 - Symmetry The figure shown on the left is left-right symmetric as it is possible to fold the sheet of paper along a vertical line, drawn as a dashed line, and to cut the figure into two identical halves. The figure on the right is not left-righ…
1100: [POI2007]对称轴osi Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 630  Solved: 243[Submit][Status][Discuss] Description FGD小朋友--一个闻名遐迩的年轻数学家--有一个小MM,yours.FGD小朋友非常喜欢他的MM,所以他很乐意帮助他的MM做数学作业.但是,就像所有科学的容器一样,FGD的大脑拒绝不停地重复思考同样的问题.不幸的是,yours是一个十分用功的学生,所…
题意 给一个\(n(1 \le n \le 100000)\)个点不自交的多边形,求对称轴数目. 分析 将多边形表示成长度和角的形式(用有向面积来表示角也行),然后匹配. 题解 匹配可以用kmp或manacher. #include <bits/stdc++.h> using namespace std; const int N=400005; inline int getint() { int x=0, f=1, c=getchar(); for(; c<48||c>57; f=…
将多边形转化为如下的环: 1到2的边,角2,2到3的边,角3,...,n-1到n的边,角n,n到1的边,角1 然后枚举对称轴,如果i是对称轴,那么[i-n,i+n]是一个回文串 用Manacher算法实现即可. 时间复杂度$O(n)$. #include<cstdio> #define N 100010 typedef long long ll; int T,n,i,r,p,f[N<<2],ans; struct P{ int x,y; P(){x=y=0;} P(int _x,i…
颓废的一个下午,一直在切水题,(ˉ▽ ̄-) 首先如果这些点是对称的话,那么它们的对称轴就是x = m,m是横坐标的平均值. 把这些点放到一个集合里,然后扫描每个点,计算出它关于x = m的对称点,看这个点是否在集合里面. 如果有一个不在的话,说明不能构成对称图形. #include <cstdio> #include <algorithm> #include <set> using namespace std; struct Point { int x, y; Poin…
思路:首先,如果这些点对称,那么它们的对称轴是x = m(m是所有点横坐标的平均值):   把这些点放到一个集合里,然后扫描每个点,计算出它关于x = m的对称点,看这个点是否在集合里面.   如果有一个不在的话,说明不能构成对称图形. #include <iostream> #include <algorithm> #include <cstdio> #include <set> using namespace std; struct Point{ int…
给出平面上N(N<=1000)个点.问是否可以找到一条竖线,使得所有点左右对称,如图所示: 则左边的图形有对称轴,右边没有.   Sample Input  3 5 -2 5 0 0 6 5 4 0 2 3 4 2 3 0 4 4 0 0 0 4 5 14 6 10 5 10 6 14 Sample Output YES NO YES 写题永远都是wrong answer..... #include <cstdio> #include <iostream> #include…
题目给出一些点的坐标(横坐标,纵坐标),没有重叠的点,求是否存在一条竖线(平行于y轴的线),使线两边的点左右对称. 我的思路:对于相同的纵坐标的点,即y值相同的点,可以将x的总和计算出,然后除以点的数目,即可得到对称轴的x坐标.所以,对于不同的y值,可以算出这个y值对应的点的对称轴的x坐标,只要观察这些x坐标的值是否相等即可.如果相同,则存在一条竖线满足题意.如果出现不相同,则不存在符合题意的竖线. 注意点:计算后的x的值可能为小数,故需要用double保存. /* UvaOJ 1595 Eme…
题目链接: http://acm.timus.ru/problem.aspx?space=1&num=1963 题意,顺时针或逆时针给定4个坐标,问对称轴有几条,输出(对称轴数*2) 对于一条对角线,若他是对称轴,必须满足:另外2点关于这条对角线对称  => 2条对角线互相垂直且 与这条对角线形成的夹角相等 而对于每条边的中点,只需要证明中点相连后与其所在的边垂直即可,垂直且相等就可以证明是对称的 #include <iostream> #include <string&g…
BZOJ_1100_[POI2007]对称轴osi_KMP+计算几何 Description FGD小朋友——一个闻名遐迩的年轻数学家——有一个小MM,yours.FGD小朋友非常喜欢他的MM,所以他很乐 意帮助他的MM做数学作业.但是,就像所有科学的容器一样,FGD的大脑拒绝不停地重复思考同样的问题.不幸的 是,yours是一个十分用功的学生,所以她不停地让FGD帮助她检查她的作业.一个阳光明媚的周末,yours的数学 老师布置了非常多的寻找多边形的对称轴的题,足够她做相当长的一段时间了.在此…
题目链接:https://cn.vjudge.net/problem/URAL-1963 题目大意:给你一个四边形的n个点,让你判断对称点的个数(对称轴的个数*2). 具体思路:感谢qyn的讲解,具体的判断过程如下,首先判断两条对角线是不合法的.对于当前的对角线,(x2,y2)与(x4,y4)形成的对角线,我们只需要判断第一个点与第四个点形成的距离和第三个点和第四个点形成的距离是不是相同的,以及第二个点与第一个点形成的距离和第三个点和第二个点形成的距离是不是相等就能判断出来了.第二条对角线的判断…
Problem bzoj1100 题意概要:给定一个简单多边形(不一定凸),求其对称轴数量 数据组数\(\leq 10\),多边形点数\(\leq 10^5\) Solution 这题算是跨界算法的经jian典dan题目了吧 观察多边形对称的性质,容易发现其本质就是沿着对称轴翻折可以使多边形重合,即两侧一致 进一步发现所有边长和角度相等,可证如果给定固定的角度和边长,只能得到一种图形,所以一旦某点或某边两侧的边长角度对应相等,则一定存在一条对称轴穿过该点或该边 为了快速地得到对应相等的边和角,可…
针对对称性PDB 3UKM,使用make_symmdef_file.pl脚本,可以执行产生对称单元及对称文件: $> $ROSETTA3/src/apps/public/symmetry/make_symmdef_file.pl -m NCS -a A -i B -p 3UKM.pdb > 3UKM.symm 参数意义: Here we are using symmetry to model an already-symmetric starting protein. This is call…
[POI2007]对称轴osi Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 771  Solved: 307[Submit][Status][Discuss] Description FGD小朋友——一个闻名遐迩的年轻数学家——有一个小MM,yours.FGD小朋友非常喜欢他的MM,所以他很乐意帮助他的MM做数学作业.但是,就像所有科学的容器一样,FGD的大脑拒绝不停地重复思考同样的问题.不幸的是,yours是一个十分用功的学生,所以她不停地让…
A. Clear Symmetry 题目连接: http://codeforces.com/contest/201/problem/A Description Consider some square matrix A with side n consisting of zeros and ones. There are n rows numbered from 1 to n from top to bottom and n columns numbered from 1 to n from l…
Description FGD小朋友--一个闻名遐迩的年轻数学家--有一个小MM,yours.FGD小朋友非常喜欢他的MM,所以他很乐意帮助他的MM做数学作业.但是,就像所有科学的容器一样,FGD的大脑拒绝不停地重复思考同样的问题.不幸的是,yours是一个十分用功的学生,所以她不停地让FGD帮助她检查她的作业.一个阳光明媚的周末,yours的数学老师布置了非常多的寻找多边形的对称轴的题,足够她做相当长的一段时间了.在此之前FGD已经决定去海边度过这个难得的假期,不过他还是觉得应该帮助他的MM对…
The main reasons why hydraulic motors have this symmetrical internal structure are as follows: The     Hydraulic Motor manufacturers    states: 1. Because this product is in use, it needs to be able to achieve forward and reverse. In order to achieve…
特别神的一道题. 有一句话要反复揣摩:题中给的所有点构成一个多边形!! 而且读入还是按照多边形的轮廓读进来的!!! 我们知道,如果对称轴确定的话判定条件是对应角相等且对应边相等. 所以把相邻边夹角和边长看成二元组,然后倍长原串,跑一个 $mancher$ 求几个串的回文半径最大就行了. 代码就不贴了......…
一:题目 判断平面上的一组点,是否关于一条竖线对称.即找到一条垂直对称轴 (一)样例输入 - (二)样例输出 YES NO YES 二:代码实现 #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <algorithm> using namespace std; #define MAX_LEN 1000 typedef struct Pot { double x; double y; bool operator&…
题意:给出n个在直角坐标系上的点,问你能不能找出一条竖轴(即垂直于x的轴)使得所有的点根据这条轴对称,能则输出YES,否则输出NO 分析:首先需要找到对称轴的值,将所有n个点的x轴的值加起来然后去除以n便可得(证明在下方).对于各个点的处理就是将每一个点的x,y组成一个pair丢到set里面去让其自动根据x轴的大小来排序,然后遍历一遍set,根据对称轴信息就可以得到对称点,如果有对称点不在set里面那就是NO的情况,否则反之! 但是在偶数个点的时候,对称轴的值会出现小数点,涉及到精度问题,那有没…
Description Luogu3454 BZOJ1100 Solution 把边和角顺次放入一个数组里,如果一个点为中心的回文串的半径大于\(n\),那就一定是一个对称轴.跑一遍manacher就行. Code #include <algorithm> #include <cmath> #include <cstdio> using std::max; typedef long double ld; typedef long long ll; const int N…
「JSOI2015」symmetry 传送门 我们先考虑构造出原正方形经过 \(4\) 种轴对称变换以及 \(2\) 种旋转变换之后的正方形都构造出来,然后对所得的 \(7\) 个正方形都跑一遍二维哈希,这样我们就可以通过哈希,在 \(O(n ^ 2)\) 时间内判断原正方形中是否存在某一类型的某一大小的子正方形. 但是如果我们枚举边长,复杂度就会达到 \(O(n ^ 3)\) 级别,显然过不了. 考虑优化:我们发现对于任意一种类型的正方形,它把最外面一圈去掉之后还是满足原来的性质,所以我们可以…
tex文档: \documentclass[a4paper, 12pt]{article} % Font size (can be 10pt, 11pt or 12pt) and paper size (remove a4paper for US letter paper) \usepackage{amsmath,amsfonts,bm} \usepackage{hyperref} \usepackage{amsthm,epigraph} \usepackage{amssymb} \usepac…
传送门: https://www.luogu.com.cn/problem/P3046 https://ac.nowcoder.com/acm/contest/6306/G 题意 给定n个不同的点,求这个点集有多少条对称轴 题解 对于一个点只有两种情况,一种是和另一个点关于这条线对称,一种是在对称轴上. 第一种情况:随机选择一个点p,枚举其他的点和他形成的对称轴,然后再判断这个对称轴是不是点集的对称轴. 第二种情况:当点在对称轴上时,要么另一个点 q 也在对称轴上,两点所在的直线是对称轴,这种情…
  The figure shown on the left is left-right symmetric as it is possible to fold the sheet of paper along a vertical line, drawn as a dashed line, and to cut the figure into two identical halves. The figure on the right is not left-right symmetric as…
链接 按x或y排序,假如有对称点的话,头尾相对. #include <iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<stdlib.h> #include<vector> #include<cmath> #include<queue> #include<set> using namespace std…