1.【穷举法】鸡兔同笼
任务描述
解决一个经典的“鸡兔同笼”数学问题:已知笼子里共有35个头和94条腿,要求通过“穷举法”推算出鸡和兔子各有多少只。
def fun(a,b): for i in range(1,a+1): if i*2+(a-i)*4==b: return i,a-i
x,y=fun(35,94)print('鸡有{}只,兔子有{}只'.format(x,y))2.【递归法】字符串反转
任务描述
实现一个基于递归算法的字符串反转程序,用于对军事通信中的指令字符串进行加密处理。给定一条明文指令(如“ATTACK_ENEMY_BASE”),通过递归方式将其字符顺序完全反转,生成密文(如“ESAB_YMENE_KCATTA”),以达到简单加密的目的。
相关知识
字符串反转是指将字符串中的字符从后往前重新排列的过程。递归是一种函数调用自身的方法,适合处理具有自相似结构的问题。在字符串反转中,可以通过“取出第一个字符,然后递归处理剩余部分,最后将第一个字符放到结果末尾”的策略来实现整体反转。递归的终止条件是待处理字符串为空或只剩一个字符时直接返回。
编程要求
编写一个名为reverse_string的递归函数,该函数接收一个字符串参数,表示待加密的军事指令。函数不使用循环结构,仅通过递归方式实现字符串的完全反转,并返回反转后的字符串。例如,输入 "ATTACK_ENEMY_BASE",输出应为 "ESAB_YMENE_KCATTA"(注:示例中可能存在笔误,正确反转应为原字符串倒序)。确保函数能正确处理包含下划线的大写字母字符串。
def myReverse(s): #请开始编程 if len(s) <= 1: return s return myReverse(s[1:]) + s[0] ##########str=input('')print(myReverse(str))3.【贪心法】求最大值
任务描述
从用户输入的一串数字中,使用贪心策略找出其中的最大值并输出。
相关知识
贪心法是一种在每一步选择中都采取当前最优解的算法思想。在求最大值的问题中,贪心策略体现为:从第一个数开始,假设它是当前最大值,然后依次将后续每个数与当前最大值比较,如果发现更大的数,就更新最大值。 由于每次比较都保留较大的数,最终留下的就是全局最大值。这种方法不需要保存所有数据,适合处理一串连续输入的数字。
编程要求
编写一个程序,能够接收用户输入的一串数字(可以以空格分隔或逐个输入),使用贪心算法的思想,在遍历这串数字的过程中动态维护当前遇到的最大值。遍历结束后,输出该最大值。要求程序能正确处理正数、负数和零,并确保输入至少包含一个数字。
# -*- coding: utf-8 -*-"""输入一个整数序列,求最大值。
"""
def find_max(a): #请开始编程 Max=a[0] for i in range(1,len(a)): if a[i]>Max: Max=a[i]
return Max ###############
a=eval(input(''))m=find_max(a)print(m)如果这篇文章对你有帮助,欢迎分享给更多人!
部分信息可能已经过时



























