D: 四边形面积

时间限制: 1 s      内存限制: 128 MB      提交 我的状态

题目描述

有一个四边形,现在需要求它的面积

输入

输入四行,每行两个数整数xx, yy (1≤x,y≤1000)(1≤x,y≤1000),四个点是按逆时针输入的。

输出

输出四边形的面积,保留3位小数点,

样例输入

0 0

10 0

1 1

0 11

样例输出

10.500

提示

C语言中保留3位小数用%.3lf   用法:printf("%.3lf",result)

四边形分凸凹四边形。

#include<iostream>
#include<math.h>
using namespace std;
double x[5],y[5];
double get_dis(int i,int j){
return sqrt((x[i]-x[j])*(x[i]-x[j])+(y[i]-y[j])*(y[i]-y[j]));
}
double get_m(double a,double b,double c){
double s=(a+b+c)/2;
return sqrt(s*(s-a)*(s-b)*(s-c));
}
int main()
{
for(int i=1;i<=4;i++)
scanf("%lf%lf",&x[i],&y[i]);
double d12,d23,d14,d34,d13,d24,ans;
d12=get_dis(1,2);d23=get_dis(2,3);
d14=get_dis(1,4);d34=get_dis(3,4);
d13=get_dis(1,3);d24=get_dis(2,4);
ans=min(get_m(d12,d23,d13)+get_m(d14,d34,d13),get_m(d12,d14,d24)+get_m(d23,d34,d24));
//取13为最长边和24为最长边两种情况的最小值
printf("%.3lf\n",ans);
return 0;
}

Just oj 2018 C语言程序设计竞赛(高级组)D: 四边形面积的更多相关文章

  1. Just oj 2018 C语言程序设计竞赛(高级组)F:Star(结构体排序+最小生成树)

    F: Star Time Limit: 1 s      Memory Limit: 128 MB Submit My Status Problem Description 31世纪,人类世界的科技已 ...

  2. Just oj 2018 C语言程序设计竞赛(高级组)H: CBT?

    H: CBT? 时间限制: 1 s      内存限制: 128 MB      提交 我的状态 题目描述 对于二叉树,如果这棵树的节点排布是按行从上到下,每行从左到右挨个放置,中间不会有空闲的节点. ...

  3. 2018年江西理工大学C语言程序设计竞赛(高级组) 三角平方数

    题目描述 三角数:形如图a,圆点摆放成等边三角形的数字,则为三角数. (图a) 平方数:形如图b,小方块摆放成正方形的数字,则为平方数. (图b) 那么如果一个数字既是三角形数又是平方数,则称为三角平 ...

  4. Just Oj 2017C语言程序设计竞赛高级组A: 求近似值(矩阵快速幂)

    A: 求近似值 时间限制: 1 s      内存限制: 128 MB 提交 我的状态 题目描述 求⌊(5–√+6–√)2n⌋⌊(5+6)2n⌋%9932017. 例如:n=1,(5–√+6–√)2( ...

  5. Just Oj 2017C语言程序设计竞赛高级组E: DATE ALIVE(二分匹配)

    E: DATE ALIVE 时间限制: 1 s      内存限制: 128 MB 提交 我的状态 题目描述 五河士道家里的精灵越来越多了,而每一个精灵都想和他有一个约会.然而五河士道却只有一个,无奈 ...

  6. Just Oj 2017C语言程序设计竞赛高级组D: 字符串最大表示(next数组)

    D: 字符串最大表示 时间限制: 1 s      内存限制: 128 MB 题目描述 有如下定义,abcnabcn表示字符串abc重复n次,例如abc2abc2表示abcabc. 给定一个字符串,求 ...

  7. 2018年江西理工大学C语言程序设计竞赛高级组部分题解

    B Interesting paths 考察范围:组合数学 此题是机器人走方格的变种,n*m的网格,从(1,1)走到(n,m),首先可以明确,水平要走m-1格,竖直要走n-1格,则走到目的地的任意一条 ...

  8. 2014江西理工大学C语言程序设计竞赛高级组题解

    1001 Beautiful Palindrome Number 枚举回文数字前半部分,然后判断该数字是否满足,复杂度为O(sqrt(n))! 1002 Recovery Sequence  本题的核 ...

  9. 2017年江西理工大学C语言程序设计竞赛(高级组)

    问题 A: 求近似值 #include <stdio.h> #include <time.h> #include <stdlib.h> using namespac ...

随机推荐

  1. poi读取Excel模板并修改模板内容与动态的增加行

    有时候我们可能遇到相当复杂的excel,比如表头的合并等操作,一种简单的方式就是直接代码合并(浪费时间),另一种就是写好模板,动态的向模板中增加行和修改指定单元格数据. 1.一个简单的根据模板shee ...

  2. LeetCode one Two Sum

    LeetCode one Two Sum (JAVA) 简介:给定一个数组和目标值,寻找数组中符合求和条件的两个数. 问题详解: 给定一个数据类型为int的数组,一个数据类型为int的目标值targe ...

  3. Linker Scripts3--MEMORY Command

    1.前言 链接器的默认配置允许所有有效内存的分配,你可以使用MEMORY命令来重新定义它 2.MEMORY命令 MEMORY命令描述了一个内存块的位置和大小.你可以用它来描述哪块内存区域可以被链接器使 ...

  4. 使用cstdiofile在vs2010中无法写入中文的问题

    在VC2010环境下, 以下代码无法实现使用CStdioFile向文本文件中写入中文(用notepad.exe查看不到写入的中文) CStdioFile file; file.Open(…); fil ...

  5. English常用短语

    (1) be waken  by    被什么吵醒 (2) wake up !           快醒醒 (3)  put the flames    /fleimz/               ...

  6. 题解-BOI 2004 Sequence

    Problem bzoj & Luogu 题目大意: 给定序列\(\{a_i\}\),求一个严格递增序列\(\{b_i\}\),使得\(\sum \bigl |a_i-b_i\bigr|\)最 ...

  7. 【转】ArrayList与LinkedList的区别和适用场景

    ArrayList 优点:ArrayList是实现了基于动态数组的数据结构,因为地址连续,一旦数据存储好了,查询操作效率会比较高(在内存里是连着放的). 缺点:因为地址连续,当要插入和删除时,Arra ...

  8. java二分查找

    二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好:其缺点是要求待查表为有序表,且插入删除困难.因此,折半查找方法适用于不经常变动而查找频繁的有序列表.首先,假设表中元素是按升序排列,将表 ...

  9. rman 示例

    背景 rman,听这名字,好像有点真的男人意思.这玩意其实也简单,只是老忘,作为一个oracle dba爱好者,怎么少了rman呢,这个好像是oracle体系的最后一环,把它掌握了,就完成oracle ...

  10. <TCP/IP>链路层小结

    图片和部分内容转载自Chang Zhao   这章大致介绍了以太网,以太网帧的格式,网桥和交换机,无线局域网(Wi-Fi),点到点协议,MTU(最大传输单元)的知识点,所谓链路,在此可以解释为 IP数 ...