
算法
_久夏青
这个作者很懒,什么都没留下…
展开
-
累加 test1
累加n = input(“input n:\n”)n = int(n)s = 0for x in range(1, n + 1):s += xprint(s)原创 2021-07-14 11:40:25 · 65 阅读 · 0 评论 -
九九乘法表 test3
9 9 乘法表# 9 9 乘法表for x in range(1, 10): for y in range(1,x + 1): # , end = ' ' 作用是去掉print()函数的自动换行,使用末尾加一个空格的形式 print("{} * {} = {}".format(y, x, x * y), end=' ') print("")...原创 2021-07-14 11:44:14 · 63 阅读 · 0 评论 -
test13 实现Pow(x, n)
test13 实现Pow(x, n)1:实现Pow(x, n)题干:实现pow(x,n),即计算 x 的 n 次幂函数。示例 1:输入: 2.00000, 10输出: 1024.00000示例2:输入: 2.10000, 3输出: 9.26100示例3:输入: 2.00000, -2输出: 0.25000解释: 2-2 = 1/22 = 1/4 = 0.25代码:def Pow(x, n): # 保留小数点后五位 return '%.5f' % x ** n原创 2021-08-12 22:58:00 · 122 阅读 · 0 评论 -
test7 千位分割数
test7 千位分割数Introduction:1:千位分割数解释:给你一个整数n,请你每隔三位添加点(即 “.” 符号)作为千位分隔符,并将结果以字符串格式返回。输入:n = 123456789输出:“123.456.789”输入:n = 0输出:"0"代码如下:n = int(input())# 先将字符串反转后给变量ss = str(n)[::-1]# res用来存储反转后加完.的字符串res = ""# 反着遍历原来的字符串nfor i in range(len(原创 2021-07-29 11:27:03 · 196 阅读 · 0 评论 -
test9 合并两个有序数组
test9 合并两个有序数组合并两个有序数组解释:给你两个有序整数数组nums1和nums2,请你将nums2合并到nums1中,使nums1成为一个有序数组。说明:初始化nums1 和 nums2 的元素数量分别为m 和 n 。你可以假设nums1有足够的空间(空间大小大于或等于m + n)来保存 nums2 中的元素。输入:nums1 = [1,2,3,0,0,0], m = 3nums2 = [2,5,6], n = 3输出:[1,2,2,3,5,6]代码如下:原创 2021-07-29 11:31:55 · 101 阅读 · 0 评论 -
test8 连续数列
test8 连续数列2:连续数列解释:给定一个整数数组,找出总和最大的连续数列,并返回总和。输入: [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。代码如下:nums = [-2, 1, -3, 4, -1, 2, 1, -5, 4]temp = nums[0] # 当前位res = nums[0] # 返回值for i in range(1, len(nums)): # 如果当前位与下一位的和没有下原创 2021-07-29 11:28:30 · 345 阅读 · 0 评论 -
test6 字符串轮转
字符串轮转题干:字符串轮转解释:字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。代码:def reverseLeftWords(s, n): left, right = s[:n], s[n:] return right + leftinput_string = input()print(reverseLeftWo原创 2021-07-23 12:10:17 · 191 阅读 · 0 评论 -
test4 回文排列
test4 回文排列# -*- coding: utf-8 -*-# @Time : 2021/7/22# @Author : ZYh"""Introduction:1:回文排列解释:给定一个字符串,编写一个函数判定其是否为某个回文串的排列之一。回文串是指正反两个方向都一样的单词或短语。排列是指字母的重新排列。回文串不一定是字典当中的单词。输入:"tactcoa"输出:true(排列有"tacocat"、"atcocta",等等)"""input_str = in原创 2021-07-22 19:09:51 · 93 阅读 · 0 评论 -
test14 移动石子直到连续
test14 移动石子直到连续题干:三枚石子放置在数轴上,位置分别为 a,b,c。每一回合,我们假设这三枚石子当前分别位于位置 x, y, z 且 x < y < z。从位置 x 或者是位置 z 拿起一枚石子,并将该石子移动到某一整数位置 k 处,其中 x < k < z 且 k != y。当你无法进行任何移动时,即,这些石子的位置连续时,游戏结束。要使游戏结束,输出可以执行的最小和最大移动次数分别是多少示例 1:输入:a = 1, b = 2, c = 5输出:[原创 2021-08-12 22:59:05 · 107 阅读 · 0 评论 -
test15 颜色分类
test15 颜色分类题干:给定一个包含红色、白色和蓝色,一共n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、1 和 2 分别表示红色、白色和蓝色。示例:输入: [2,0,2,1,1,0]输出: [0,0,1,1,2,2]代码:list1 = [2, 0, 2, 1, 1, 0]# 冒泡排序for i in range(0, len(list1)): for j in range(0, len(list1原创 2021-08-12 23:00:14 · 209 阅读 · 0 评论 -
test5 字符串压缩
字符串压缩题设:字符串压缩解释:字符串压缩。利用字符重复出现的次数,编写一种方法,实现基本的字符串压缩功能。比如,字符串aabcccccaaa会变为a2b1c5a3。若“压缩”后的字符串没有变短,则返回原先的字符串。你可以假设字符串中只包含大小写英文字母(a至z)输入:“aabcccccaaa”输出:“a2b1c5”# iniString = input()# zipStr = ""# strCnt = 1# for i in range(len(iniString) - 1)原创 2021-07-23 12:08:01 · 112 阅读 · 0 评论 -
test12 数组中的最长山脉
test12 数组中的最长山脉题干:3:数组中的最长山脉我们把数组 A 中符合下列属性的任意连续子数组 B 称为 “山脉”:B.length >= 3存在0 < i< B.length - 1使得B[0] < B[1] < … B[i-1] < B[i] > B[i+1] > … > B[B.length - 1](注意:B 可以是 A 的任意子数组,包括整个数组 A。)给出一个整数数组A,返回最长“山脉”的长度。如果不含有 “山脉”则返原创 2021-08-12 22:56:38 · 122 阅读 · 0 评论 -
test11 灯泡开关
test11 灯泡开关题干:初始时有n个灯泡关闭。第 1 轮,你打开所有的灯泡。第2轮,每两个灯泡你关闭一次。第3轮,每三个灯泡切换一次开关(如果关闭则开启,如果开启则关闭)。第i轮,每i个灯泡切换一次开关。对于第n轮,你只切换最后一个灯泡的开关。找出n轮后有多少个亮着的灯泡。示例:输入: 3输出: 1解释:初始时, 灯泡状态 [关闭, 关闭, 关闭].第一轮后, 灯泡状态 [开启, 开启, 开启].第二轮后, 灯泡状态 [开启, 关闭, 开启].第三轮后, 灯泡状态 [开启,原创 2021-08-12 22:55:08 · 106 阅读 · 0 评论 -
水仙花数 test2
水仙花数 153 = 1^3 + 5^3 + 3^3for value in range(100, 1001):if ((value // 100) ** 3 + (value // 10 % 10) ** 3 + (value % 10) ** 3) == value:print(value)原创 2021-07-14 11:42:48 · 100 阅读 · 0 评论 -
test10 加一
题目:Introduction:1:加一给定一个由 整数 组成的 非空 列表所表示的非负整数,在该数的基础上加一。最高位数字存放在列表的首位, 列表中每个元素只存储单个数字。你可以假设除了整数 0 之外,这个整数不会以零开头。示例:整数列表为:[9, 9, 9, 8]经过加1操作列表变为:[9, 9, 9, 9]整数列表为:[9, 9, 9, 9]经过加1操作列表变为:[1, 0, 0, 0, 0]代码:s = [9, 9, 9, 9]print(s)m = ''for x原创 2021-08-12 22:53:15 · 111 阅读 · 0 评论