C++最大身高(递归)(保证对)

这是一个C++程序,使用递归方法求解一组身高数据中的最大身高。程序适用于dev-c++ 5.11版本,通过读取n个学生身高,输出最大身高。递归函数定义为f(k) = max(a[k], f(k-1)),基础情况为f(1) = a[1]。代码包含输入处理、递归函数实现及主函数。" 123462430,10645231,使用HTML制作Mozilla醒目页面实战,"['前端开发', 'HTML', '响应式设计', '网页布局']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为解决某些人对不明白的题了解一点(抄答案)

适用版本:dev-c++ 5.11

初学者请先理解一下再用,因为步骤比较多(麻烦)所以如果有更简单的步骤可以私信我。

题目:

题目描述

有n个学生的身高数据,求最大的身高。

输入输出格式

输入格式:

  • 第一行n
  • 第二行n个数,表示每个人的身高

输出格式:

  • 一个整数,表示n个人里面最大的身高

输入输出样例1

输入样例1:

3
110 90 130

输出样例1:

130

测试点

共5个样例,一个20分

数据范围:

  • n<=10,000

二、分析

1、递归思路

定义f(k),表示max{a[1], ..., a[k]}。

首先考虑f(k)和f(k-1)是什么关系?显然有f(k) = max(a[k], f(k-1))

然后考虑最小问题,显然有f(1) = a[1]

代码如下:

#include <iostream>
using namespace std;
const int w=10005;
int c,a[w];
int wc(int k)
{<

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值