HDU 2108 JAVA
来源:互联网 发布:西安美乎变速箱维修 编辑:程序博客网 时间:2024/06/01 21:16
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
海东集团终于顺利成立了!后面的路,他们会顺顺利利吗?
欲知后事如何,且听下回分解——
import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while(sc.hasNext()){ // n 表示几边形, 同时表示点的个数,接下来是X,Y坐标。 int n = sc.nextInt(); if(n==0) break; int x [] = new int [n]; int y [] = new int [n]; for(int i=0;i<n;i++){ x[i]=sc.nextInt(); y[i]=sc.nextInt(); } if(n<4){ System.out.println("convex"); }else{ double k = 1.0*(y[0]-y[1])/(x[0]-x[1]); double b = y[0]-k*x[0]; double b3 = y[2]-k*x[2]; boolean isBiger=b>b3?true:false; boolean isconcave=false; for(int i=3;i<n;i++){ double temp = y[i]-k*x[i]; if(isBiger){ if(b>temp){ continue; }else{ isconcave =true; System.out.println("concave"); break; } } } if(!isconcave){ System.out.println("convex"); } } } }}
0 0
- HDU 2108 JAVA
- hdu acm hdu 2115 Java
- Exponentiation hdu 1063 java
- hdu 1313 (Java)
- 【Java】hdu 4043
- hdu 1242 Rescue<java>
- HDU 1002 JAVA
- hdu 2092(java)
- hdu 1063 java 高精度
- hdu 1106(java)
- hdu 1073(java)
- HDU-4762 Java高精度
- hdu 1002 java
- hdu 1089 java
- JAVA hdu 2192 MagicBuilding
- hdu 1001 java
- hdu 1002 java
- hdu 1003 java
- js继承方式总结
- android UiAutomator添加收货地址的用例
- 如何求∫e^(-x^2 )dx在(-∞,+∞)上的值
- 如何快速转载CSDN中的博客
- lnux系统日志及时间同步(unit10)
- HDU 2108 JAVA
- 汇编笔记1
- linux ip的配置以及网关(unit11)
- 华为面试题
- HDU 2109 JAVA
- linux 文件压缩解压、上传与下载(unit12)
- HDU 2111 JAVA
- hibernate 实现多表连接查询(转载)
- 朝思暮想的电商项目