UVA 10112 Myacm Triangles
来源:互联网 发布:域名注册批量查询 编辑:程序博客网 时间:2024/05/16 06:24
题目
Myacm三角形
分析
给出一些点的坐标,要求出最大面积且不包含任意点(点在边上也视为在三角形内)的三角形的三个点。
另给出三角形面积公式
思路
遍历所有的点做三角形,再对每一个三角形遍历其他所有点,判断该点是否在该三角形内,可以采用连点三角形的方式,如果连结产生的三角形总面积大于原三角形面积,那么点在形外。
形成三角形再比较面积,此时因为比较的量为面积,其都含有
代码
#include <stdio.h>#include <math.h>int point[16][2];char label[16];int res[3];int main(void){ int n, i, j, k, t, s, a, b, c, max, flag; while (scanf("%d\n", &n) && n > 0) { for (i = 0; i < n; i++) scanf("%c %d %d\n", &label[i], &point[i][0], &point[i][1]); max = 0; for (i = 0; i < n-2; i++) for (j = i+1; j < n-1; j++) for (k = j+1; k < n; k++) { s = fabs((point[k][1] - point[i][1]) * (point[j][0] - point[i][0]) - (point[j][1] - point[i][1]) * (point[k][0] - point[i][0])); flag = 0; for (t = 0; t < n; t++) { if (t == i || t == j || t == k) continue; a = fabs((point[t][1] - point[i][1]) * (point[j][0] - point[i][0]) - (point[j][1] - point[i][1]) * (point[t][0] - point[i][0])); b = fabs((point[k][1] - point[i][1]) * (point[t][0] - point[i][0]) - (point[t][1] - point[i][1]) * (point[k][0] - point[i][0])); c = fabs((point[k][1] - point[t][1]) * (point[j][0] - point[t][0]) - (point[j][1] - point[t][1]) * (point[k][0] - point[t][0])); if (a + b + c == s) { flag = 1; break; } } if (!flag) { if (max < s) { max = s; res[0] = i; res[1] = j; res[2] = k; } } } printf("%c%c%c\n", label[res[0]], label[res[1]], label[res[2]]); } return 0;}
0 0
- UVa 10112 Myacm Triangles
- uva 10112 - Myacm Triangles
- UVA-10112 - Myacm Triangles
- UVa 10112 - Myacm Triangles
- UVa 10112 - Myacm Triangles
- Uva 10112 - Myacm Triangles
- uva 10112 Myacm Triangles
- UVA 10112 Myacm Triangles
- UVA 10112 - Myacm Triangles
- uva 10112 Myacm Triangles
- UVa 10112 - Myacm Triangles
- UVa 10112 - Myacm Triangles
- Uva 10112 Myacm Triangles
- UVA - 10112 Myacm Triangles
- UVA - 10112 Myacm Triangles
- UVA - 10112 Myacm Triangles
- UVA 10112 Myacm Triangles
- UVA - 10112 Myacm Triangles
- poj3273 Monthly Expense 解题报告
- EhCache介绍
- C# winform 捕获全局异常
- linux格式化磁盘命令
- VS2013 LightSwitch 部署错误的解决
- UVA 10112 Myacm Triangles
- [dfs]多校联合第三场 K Work
- 假如生活欺骗了你
- 在 JAVA多态用在解决什么问题?
- 离散事件模拟-银行管理 SDUT
- 完美解决 未能打开编辑器:Unmatched braces in the pattern.
- 树莓派安装和卸载程序包介绍
- 文件上传-DiskFileItemFactory类
- OpenGL error 0x0502