简单练手
qq_42907161
这个作者很懒,什么都没留下…
展开
-
结尾非零数的奇偶性Python
结尾非零数的奇偶性题目描述给你一个正整数列表 L, 判断列表内所有数字乘积的最后一个非零数字的奇偶性。如果为奇数输出1,偶数则输出0.。例如:L=[2,8,3,50]则输出:0思路最简单的方法就是累乘,最后根据结果判断非零数的奇偶性。但是这样和结尾0的个数该题犯了一样的内存错误。其实可以和这道题一样,发现问题的本质。一个数是由许多个因子相乘而来,那么所有的数都可以分解成若干个不能再分解的因子,也就是奇数和偶数(更具体的说是质数相乘)。比如10可以分成1*10,但是10又可以继续再分,所以最终是2原创 2020-08-12 21:20:23 · 543 阅读 · 0 评论 -
求列表中位数Python
题目描述给你一个整数列表L, 输出L的中位数(若结果为小数,则保留一位小数)。例如: L=[0,1,2,3,4]则输出:2题目来源于PythonTip,中位数的计算取决于元素的个数,如果元素个数为奇数个,直接取中间的下标即可,如果为偶数,需要计算中间两个的和,再取平均值。但是python需要注意整除和除法与其他语言不一样。def solve_it(): L.sort() if len(L) % 2 == 0: sub = L[len(L) // 2 - 1] +原创 2020-08-11 18:17:05 · 1793 阅读 · 0 评论 -
最大连续子序列和Python
问题给你一个整数list L, 如 L=[2,-3,3,50], 求L的一个连续子序列,使其和最大,输出最大子序列的和。 例如,对于L=[2,-3,3,50], 输出53方法一:暴力破解最简单的方法就是直接求解出所有的子序列之和,然后比较子序列之和,求出最大值。那么如何求解子序列呢?首先子序列的起始位置可能是任意的,结束位置也可以是任意的。可以一层循环确定子序列的起始位置,嵌套一层循环确定子序列的结束位置并求和,(这里我简化了,直接利用上一个子序列的结果进一步求和),添加到空列表中。sums = 0原创 2020-07-30 16:58:17 · 750 阅读 · 0 评论 -
杭电2005题第几天
杭电oj2005题第几天?这道题的关键是要怎么从输入的字符串中获取年份月份和天,可以用split方法,将字符串按“/”分割成3个数组,这样就得到了年月日,然后进行格式转换即可,在这里要注意平年和闰年的判断,所以要有两个数组,用来保存平年和闰年各个月份的的天数,用来求和。代码如下import java.util.Scanner;public class hd2005 {public st...原创 2019-04-11 16:42:38 · 195 阅读 · 0 评论 -
杭电oj2007题
给定一段连续的整数,求出他们中所有偶数的平方和以及所有奇数的立方和。Input输入数据包含多组测试实例,每组测试实例包含一行,由两个整数m和n组成。Output对于每组输入数据,输出一行,应包括两个整数x和y,分别表示该段连续的整数中所有偶数的平方和以及所有奇数的立方和。你可以认为32位整数足以保存结果。Sample Input1 32 5Sample Output4 282...原创 2019-04-11 17:11:03 · 729 阅读 · 1 评论 -
杭电oj2010水仙花数
其实这个题还是比较简单的,就是求余数和求商的问题,关键在于输出的格式问题,eclipse中的\b不起作用,所以只能存入数组,然后总体输出来。代码如下:import java.util.Scanner;import java.lang.Math;public class hd2010 {public static void main(String[] args) { // TODO Au...原创 2019-04-11 18:30:29 · 232 阅读 · 0 评论