Shape of HDU

Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 5059    Accepted Submission(s): 2294

Problem Description
话说上回讲到海东集团推选老总的事情,最终的结果是XHD以微弱优势当选,从此以后,“徐队”的称呼逐渐被“徐总”所取代,海东集团(HDU)也算是名副其实了。
创业是需要地盘的,HDU向钱江肉丝高新技术开发区申请一块用地,很快得到了批复,据说这是因为他们公司研发的“海东牌”老鼠药科技含量很高,预期将占全球一半以上的市场。政府划拨的这块用地是一个多边形,为了描述它,我们用逆时针方向的顶点序列来表示,我们很想了解这块地的基本情况,现在请你编程判断HDU的用地是凸多边形还是凹多边形呢?
 
Input
输入包含多组测试数据,每组数据占2行,首先一行是一个整数n,表示多边形顶点的个数,然后一行是2×n个整数,表示逆时针顺序的n个顶点的坐标(xi,yi),n为0的时候结束输入。
 
Output
对于每个测试实例,如果地块的形状为凸多边形,请输出“convex”,否则输出”concave”,每个实例的输出占一行。
 
Sample Input
4
0 0 1 0 1 1 0 1
0
 
Sample Output
convex
 
海东集团终于顺利成立了!后面的路,他们会顺顺利利吗?
欲知后事如何,且听下回分解——
 
Author
lcy
 
Source
 
Recommend
lcy   |   We have carefully selected several similar problems for you:  2110 2150 2438 2202 3629 
 

用向量积来做,当出现向量积时证明有凹角。

向量a * 向量b = (a.x*b.y)-(b.x*a.y);

 //0MS    228K    635 B    C++
#include<stdio.h>
#define N 1005
struct node{
int x,y;
}p[N];
int fun(node a,node b,node c)
{
return (b.x-a.x)*(c.y-b.y)-(c.x-b.x)*(b.y-a.y);
}
int main(void)
{
int n;
while(scanf("%d",&n)!=EOF && n)
{
for(int i=;i<n;i++)
scanf("%d%d",&p[i].x,&p[i].y);
if(n<){
puts("concave");continue;
}
int flag=;
for(int i=;i<n;i++)
if(fun(p[i],p[(i+)%n],p[(i+)%n])<){
flag=;
break;
}
if(flag) puts("convex");
else puts("concave");
}
return ;
}

最新文章

  1. 使用httpclient发送http请求
  2. 「脑洞」图片转HTML(支持动画)
  3. .Net简单图片系统-简介
  4. 解决12306.cn网站验证码获取提示“基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系“的问题
  5. Eclipse如何设置代码提示功能
  6. jsp常用指令
  7. UVa 12169 (枚举+扩展欧几里得) Disgruntled Judge
  8. Linux SSh scp使用【远程文件/目录的传输】
  9. yii配置
  10. 【Scala】Scala之Packaging and Imports
  11. thinkphp框架知识点
  12. 【BZOJ5496】[十二省联考2019]字符串问题(后缀树)
  13. SoapUI并发模式
  14. 【docker】docker安装和使用
  15. TensorFlow学习之二
  16. python里面的数学
  17. 〖Linux〗使用Qt5.2.0开发Android的NDK应用程序
  18. WebService与WCF
  19. 如何优雅的封装一个DOM事件库
  20. linux split

热门文章

  1. java nio之channel
  2. autocomplete.jquery 点击或进入默认显示所有结果
  3. yield学习
  4. Qt PC 安卓 tcp传输文件
  5. 怎样通过Qt编写C/C++代码查询当前Linux的版本号?
  6. Ubuntu卡在logo界面
  7. (C#)工厂方法模式
  8. Java开发工程师(Web方向) - 04.Spring框架 - 第2章.IoC容器
  9. 前端开发工程师 - 01.页面制作 - 第3章.HTML
  10. C++错误:Process returned -1073741571 (0xC00000FD)