美文网首页
绿色计算模拟赛-第一阶段

绿色计算模拟赛-第一阶段

作者: 风清云淡Python | 来源:发表于2018-11-03 13:52 被阅读0次

第一阶段

第一关-求和

这次“绿盟杯”大赛,小明作为参赛选手在练习的时候遇到一个问题,他要对一个范围的两个数进行数位的累加,例如有两个数 1519 则 他们的数位和应该为:
1+5+1+6+1+7+1+8+1+9,结果为40。
你来帮他解决这个问题吧。

编程要求

补充完善右侧代码区中的getSum(self,num1,num2)函数,实现对两个数num1num2的数位和相加,最后返回计算的结果即可。

注:num1num2的值都在1-999之间。

测试说明

样例1

输入:
15
19
输出:
40
注意:

  • 针对本关的具体评测代码由平台后台提供,你只需补充完善getSum函数,将计算结果作为返回值返回即可;
  • 本关共包含4个测试用例,需所有测试用例评测通过才能得分。

我的解答:考查强制类型转换、循环字符串的时候,每次循环一个字符。

class Task:
    def getSum(self,num1,num2):
    ########## BEGIN ##########
    #    sum = 0
    #    for i in range(num1, num2+1):
    #    第一种思路是将数字转化成字符串,依次取出各个字符再转化成数字进行相加
    #        for j in str(i): 
    #            sum += int(j)
    #    return sum
        sum = 0
        for i in range(num1,num2+1):
    #    第二种思路是取余数,再进行整除操作             
            while (i!=0):
                sum = sum +i%10                
                i = i//10 # python中的整除是//
        return sum
    ########## END ##########

第二关-文件查看器

参加“绿盟杯”竞赛的小红遇到一个问题,她想要编写代码实现文件查看器的功能,要实现指定文件夹下所有文件以及文件夹目录结构的展示。

你来帮她实现这个功能吧。

编程要求

编写代码实现对给定文件夹目录结构的展示,如果是文件夹则在其名字之前加上+--若是文件则加上--,上级目录与下级目录,下级文件用两个空格作为间隔,同级下依照文件夹、文件的首字母顺序依次打印;补充完善右侧代码区中的showDirTree(self,path)函数实现要求的功能,其中函数参数含义如下:

  • path:指定要显示的文件夹路径

测试说明

样例1

输入:src/step2/root

输出:

image
样例2

输入:src/step2/dir
输出:

image

提示:

os包的,os.listdir(path)可以获取path路径下所有文件和文件夹的名字。
你可以通过如下链接下载本关涉及到的文件夹:
https://www.educoder.net/attachments/download/200773/step2Dir.zip

好的解答;考查递归、spilt()函数、列表通过[-1]取出最后一个元素、以及os.path.isdir()函数和os.listdir()函数

import os, sys
 
class Task:
    def showDirTree(self,path):        
########## BEGIN ##########
#递归    
        def list_search(path_1,num):            
            if os.path.isdir(path_1): # 第一种情况是文件夹
                print(' '*num+'+--'+path_1.split('/')[-1])
 
                for i in os.listdir(path_1):
                    list_search(path_1+'/'+i,num+2)
            else:  # 第二种情况是文件,直接输出
                print(' '*num+'--'+path_1.split('/')[-1])       
        
        list_search(path,0)
 
########## END ##########

第三关-图片查看器

参加“绿盟杯”竞赛的小明想要开发一个图片查看器,他想只显示文件夹下所有图片类型的文件。

你来帮小明实现这个功能吧。

编程要求

基本功能与第二题类似,编写代码实现对给定文件夹目录结构的展示,如果是文件夹则在其名字之前加上+--若是文件则加上--,上级目录与下级目录、下级文件用两个空格作为间隔,同级下依照文件夹、文件的首字母顺序依次打印;另外需要对文件进行过滤,只显示图片类型的文件,本关需要过滤的图片文件类型有:“jpg,png,bmp”,请补充完善右侧代码区中的showDirTree(self,path)函数实现本关要求的功能,其中函数参数含义如下:

  • path:指定要显示的文件夹路径

测试说明

样例1

输入:src/step3/root

输出:

image
样例2

输入:src/step3/dir

输出:

image

提示:

os包的,os.listdir(path)可以获取path路径下所有文件和文件夹的名字。

你可以通过如下链接下载本关涉及到的目录文件:

https://www.educoder.net/attachments/download/202620/step3Dir.zip

好的解答:在文件查看器的基础上,加了限制
考查列表的操作,list.count()会统计列表中出现该元素的次数

import os, sys
 
class Task:
    def showDirTree(self,path):
########## BEGIN ##########
        def list_search(path_1,num):
 
            tup=['jpg','png','bmp']
            if os.path.isdir(path_1):
                print(' '*num+'+--'+path_1.split('/')[-1])
 
                for i in os.listdir(path_1):
                    list_search(path_1+'/'+i,num+2)
            else:
                if tup.count(path_1.split('.')[-1])==1:#新加的判断条件
                    print(' '*num+'--'+path_1.split('/')[-1])
        list_search(path,0)
 
 
########## END ##########

相关文章

  • 绿色计算模拟赛-第一阶段

    第一阶段 第一关-求和 这次“绿盟杯”大赛,小明作为参赛选手在练习的时候遇到一个问题,他要对一个范围的两个数进行数...

  • 绿色计算模拟赛-第二阶段

    第二阶段 第一关-气温预测 每日根据气温数组,请重新生成一个数组,新数组对应位置的是你需要再等待多久温度才会升高的...

  • 绿色计算预赛-第一阶段

    第一阶段 第一关-字符串反转 将输入的字符串str进行反转。 编程要求 补全右侧inversion(self,st...

  • 2019-08-10 计算客模拟赛

    190分,第一题0分了,没查出来问题第一题 [第二题]https://nanti.jisuanke.com/t/4...

  • 你是谁(WhoAreYou)100计算机模拟

    下面我们谈一谈,计算机模拟的问题。 计算机模拟是很大的一块。计算机模拟,这是一个基本的描述:根据理论编写程序模拟出...

  • 模拟赛 170118

    题目|文件名称 |总时间限制|内存限制|试题总分|测试点|题目类型--------------|-------|-...

  • 计算模拟历史

    以前闲着无聊的时候曾经做过一个《资治通鉴》的字频统计,单以频率计,中国历史不过是“王”与“人”,“义”与“忠”,“...

  • 人工智能发展自其诞生起大致可以分为两个阶段

    第一阶段主要是研究人的认知与思维过程并将其机械化,使计算机可以模拟人的思考过程,即机械化推理又或形式推理。对于形式...

  • 时间对称性和物理定律

    两个相互影响的黑洞的两个计算机模拟。红线是计算机回溯到的模拟。白线是计算机在时间上向前移动的模拟。经过3500万年...

  • Flink基本原理

    1.支持流处理的引擎:Spark和Flink Spark:基于批处理来模拟流的计算;Flink:基于流计算来模拟批...

网友评论

      本文标题:绿色计算模拟赛-第一阶段

      本文链接:https://www.haomeiwen.com/subject/taekxqtx.html