C语言笔试题之求出三角形的最大周长

news/2024/12/23 7:21:03/

实例要求:

  • 1、给定由一些正数(代表长度)组成的数组 nums
  • 2、返回 由其中三个长度组成的、面积不为零的三角形的最大周长
  • 3、如果不能形成任何面积不为零的三角形,返回 0

案例展示:

在这里插入图片描述

实例分析:

  • 1、引入qsort函数和自定义cmp函数解决问题;

  • 2、对所有的元素快速排序后,取最大的三个边长,并判断是否满足三角形周长;

  • 3、若满足条件就返回最大周长,不满足则返回0;

  • qsort函数:

	void qsort(void *base, size_t nitems, size_t size, int (*compar)(const void *, const void*))/*参数:base //指向要排序的数组的第一个元素的指针nitems //由 base 指向的数组中元素的个数size //数组中每个元素的大小,以字节为单位compar //用来比较两个元素的函数*/
  • 自定义cmp函数:
	//对int数组升序排序int cmp(const void *a ,const void *b){return *(int *)a-*(int *)b;}

示例代码:

	int cmp(const void *a ,const void *b){return *(int *)a-*(int *)b;}int largestPerimeter(int* nums, int numsSize) {qsort(nums, numsSize, 4, cmp); // 对数组进行升序排序for (int i = numsSize - 1; i >= 2; i--) {if (nums[i] < nums[i-1] + nums[i-2]) {return nums[i] + nums[i-1] + nums[i-2]; // 返回最大周长}}return 0;}

运行结果:

在这里插入图片描述
在这里插入图片描述


http://www.ppmy.cn/news/1346668.html

相关文章

使用PySpark处理DataFrame以拆分数组列

问题&#xff1a;用pyspark 处理df1,df1 有三列&#xff0c;第一列是商品pid,第二列是商品name,第三列是候选标品cid_list(有多个cid),将df1中的cid_list拆开,转换成一个商品id和name对应一个cid&#xff0c;但是有多行 from pyspark.sql.functions import explode, col# 假设…

开源软件对技术以及行业发展的影响

开源软件和代码对技术发展和行业产生了广泛而深远的影响。以下是一些主要方面的深入分析&#xff1a; 1. 协作和共享&#xff1a; 技术发展&#xff1a; 开源项目提供了一个集体协作和共享的平台&#xff0c;吸引了全球各地的开发者共同参与。这种协同工作模式推动了技术的快…

spring boot(2.4.x 开始)和spring cloud项目中配置文件application和bootstrap加载顺序

在前面的文章基础上 https://blog.csdn.net/zlpzlpzyd/article/details/136060312 spring boot 2.4.x 版本之前通过 ConfigFileApplicationListener 加载配置 https://github.com/spring-projects/spring-boot/blob/v2.3.12.RELEASE/spring-boot-project/spring-boot/src/mai…

Golang数据库编程详解 | 深入浅出Go语言原生数据库编程

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站https://www.captainbed.cn/kitie。 Golang学习专栏&#xff1a;https://blog.csdn.net/qq_35716689/category_12575301.html 前言 对数据库…

SpringMVC-组件解析

一、引子 我们在上一篇文章Spring MVC-基本概念中&#xff0c;为读者解释了如何使用SpringMVC框架&#xff0c;将承接客户端请求的工作从原生的Servlet转移到我们熟知的Controller中。那么我们不禁会好奇&#xff0c;SpringMVC框架到底做了什么&#xff0c;是怎么把请求分发给…

数据结构入门(1)数据结构介绍

目录 前言 1. 什么是数据结构&#xff1f; 2.什么是算法&#xff1f; 3.数据结构和算法的重要性 前言 本文将开始介绍计算机里的数据结构。 数据结构是指数据对象中元素之间的关系&#xff0c;以及对这些关系的操作。数据结构可以分为线性结构和非线性结构。 线性结构是…

Springboot拦截器中跨域失效的问题、同一个接口传入参数不同,一个成功,一个有跨域问题、拦截器和@CrossOrigin和@Controller

Springboot拦截器中跨域失效的问题 一、概述 1、具体场景 起因&#xff1a; 同一个接口&#xff0c;传入不同参数进行值的修改时&#xff0c;一个成功&#xff0c;另一个竟然失败&#xff0c;而且是跨域问题拦截器内的request参数调用getHeader方法时&#xff0c;获取不到前端…

Hive与Presto中的列转行区别

Hive与Presto列转行的区别 1、背景描述2、Hive/Spark列转行3、Presto列转行 1、背景描述 在处理数据时&#xff0c;我们经常会遇到一个字段存储多个值&#xff0c;这时需要把一行数据转换为多行数据&#xff0c;形成标准的结构化数据 例如&#xff0c;将下面的两列数据并列转换…