一、编程题
1、一个四位数,如果在它的左边加一个数字8,就可以得到一个五位数;如果在它的右边加一个数字6,就可以得到另一个五位数, 这两个五位数的和是121410。请问原来这个四位数是多少?
现在请你编写程序,求出这个四位数。
补全下面的代码:
解析:【喵呜刷题小喵解析】本题是一道编程题,要求找出满足特定条件的四位数。首先,我们需要遍历所有四位数,即1000到9999之间的整数。对于每个四位数,我们可以在其左边添加一个数字8,得到一个五位数,记为num1;在其右边添加一个数字6,得到另一个五位数,记为num2。然后,我们检查num1和num2的和是否等于121410。如果是,则找到了满足条件的四位数,返回该四位数;否则,继续遍历下一个四位数。最后,如果遍历完所有四位数都没有找到满足条件的数,则返回None。在Python中,我们可以使用字符串拼接和int()函数来实现上述过程。具体实现可以参考上述代码。
2、请读取文件/data/subways.csv的数据,数据内容如下图显示:
下列代码实现了读取“学号”和“身高”信息,输出“身高”达到120的学号,请你补全代码。
解析:【喵呜刷题小喵解析】首先,我们需要导入pandas库,这是一个用于数据分析和处理的Python库。然后,我们使用pandas的read_csv函数读取/data/subways.csv文件,并将读取的数据存储在data变量中。接着,我们使用dataframe的索引功能,筛选出身高达到120的学生的数据,并将这些数据中的学号提取出来,存储在result变量中。最后,我们打印出result,即身高达到120的学生的学号。
3、有一组数据[0,20,0,4,31]存放在nums中,请将列表中的所有零移动到列表尾。
解析:【喵呜刷题小喵解析】本题要求将列表中的所有零移动到列表尾。我们可以使用双指针的方法来解决这个问题。首先,我们定义两个指针,一个快指针和一个慢指针。快指针用于遍历整个列表,慢指针用于移动非零元素。当快指针指向的元素不是零时,我们就将该元素移动到慢指针的位置,并将慢指针向前移动一位。最后,我们再将列表的剩余部分全部设置为零,即可将所有的零移动到列表的末尾。具体来说,首先让慢指针和快指针都指向列表的第一个元素。然后,快指针开始遍历列表,当快指针指向的元素不是零时,就将该元素移动到慢指针的位置,并将慢指针向前移动一位。当快指针遍历完整个列表后,列表中的非零元素都已经被移动到了列表的前方,而列表的剩余部分都是零。最后,我们再将列表的剩余部分全部设置为零,即可将所有的零移动到列表的末尾。
喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!