蓝桥杯官网算法赛(蓝桥小课堂)

问题描述

蓝桥小课堂开课啦!

海伦公式(Heron's formula),也称为海伦-秦九韶公式,是用于计算三角形面积的一种公式,它可以通过三条边的长度来确定三角形的面积,而无需知道三角形的高度。

海伦公式的形式如下:

假设三角形的三条边长度分别为 a、 b 和 c,半周长(即三边之和的一半)为 s,那么三角形的面积 A 可以通过以下公式计算:

其中,√x 表示计算 x 的平方根。

海伦公式可以用于计算任意三角形的面积,无论三角形是锐角、直角还是钝角三角形。它的原理是基于三角形面积与三角形的边长之间的关系。

使用海伦公式计算三角形的面积时,需要确保三个边长满足构成三角形的条件,即任意两边之和大于第三边。否则,如果输入的边长不能构成一个三角形,海伦公式将无法计算有效的面积。

现在,学习完海伦公式后你需要接受小蓝的考验了。给定三条边 a,b,c,假设这三边组成的三角形面积为 S,请你回答 S^2的值是多少。

若 a,b,c 无法围成三角形则输出 -1。

输入格式

输入一行三个整数 a,b,c 表示三条边。

输出格式

输出一个整数表示答案。

样例输入

复制代码
3 4 5

样例输出

复制代码
36

评测数据范围

1≤a,b,c≤300。

保证 (a+b+c) 为偶数。

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int a=scan.nextInt();
        int b=scan.nextInt();
        int c=scan.nextInt();
        if(check1(a,b,c)){
          int s=(a+b+c)/2;
          int A=s*(s-a)*(s-b)*(s-c);
          System.out.println(A);
        }
        else{
          System.out.println(-1);
        }
        scan.close();
    }
    public static boolean check1(int a,int b,int c){
      if(a+b<=c){
        return false;
      }
      else if(a+c<=b){
        return false;
      }
      else if(b+c<=a){
        return false;
      }
      return true;
    }
}
相关推荐
武子康11 分钟前
大数据-258 离线数仓 - Griffin架构 配置安装 Livy 架构设计 解压配置 Hadoop Hive
java·大数据·数据仓库·hive·hadoop·架构
若亦_Royi12 分钟前
C++ 的大括号的用法合集
开发语言·c++
Captain823Jack1 小时前
nlp新词发现——浅析 TF·IDF
人工智能·python·深度学习·神经网络·算法·自然语言处理
资源补给站1 小时前
大恒相机开发(2)—Python软触发调用采集图像
开发语言·python·数码相机
豪宇刘1 小时前
MyBatis的面试题以及详细解答二
java·servlet·tomcat
秋恬意1 小时前
Mybatis能执行一对一、一对多的关联查询吗?都有哪些实现方式,以及它们之间的区别
java·数据库·mybatis
Captain823Jack1 小时前
w04_nlp大模型训练·中文分词
人工智能·python·深度学习·神经网络·算法·自然语言处理·中文分词
m0_748247551 小时前
Web 应用项目开发全流程解析与实战经验分享
开发语言·前端·php
测试杂货铺2 小时前
Jmeter压测实战:Jmeter二次开发之自定义函数
自动化测试·软件测试·测试工具·jmeter·职场和发展·测试用例·压力测试
6.942 小时前
Scala学习记录 递归调用 练习
开发语言·学习·scala