西安邮电大学计算机学院夏令营上机考核练习题


西邮-计算机学院机试题

Author : Hua
2021.05.19

第一题

while循环
1.酷暑难耐,好消息传来,毛坡村开业了一家泳池,小伙伴们相继去戏水,狗剩是个旱鸭子,在损友们强拉硬拽多次呛水后,勉强学会了狗刨。可是他很难过地发现,自己的力气不够,游泳好累哦,已知狗剩第一步能游 2 米,可是随着越来越累,力气越来越小,接下来的每一步只能游出上一步距离的98%。现在狗剩想知道,如果游到距离 x 米的地方,他需要游多少步呢,请你编程解决这个问题。输入格式:输入一个数字(不一定是整数,小于 100m),表示要游的目标距离。输出格式:输出一个整数,表示狗剩一共需要游多少步。

输入样例:4.3
输出样例:3


#! /usr/bin/python3
# _*_ coding: utf-8 _*_

# @Author:Hua
# @2021.05.19

aim_distance = float(input("please input aim distance: "))
step = 0
distance = 0

while aim_distance > distance :
    distance = distance + 2 * (0.98 ** step)
    step = step + 1

print(step)


第二题

字符串与列表的转换、for循环

2.比目鱼是两只眼睛长在一边的奇鱼,被认为需两鱼并肩而行,故名比目鱼,人比人,气死人;鱼比鱼,难死鱼。小鱼们最近参加了一个“比可爱”比赛,比的是每只鱼的可爱程度,参赛的鱼被从左到右排成一排,头部朝向左边,然后每只鱼会得到一个整数数值,表示这只鱼的可爱程度,很显然整数越大,表示这只鱼越可爱,而且任意两只鱼的可爱程度可能一样,由于所有的鱼头都朝向左边,所以每只鱼只能看见在它左边的鱼的可爱程度,它们心里都在计算,在自己的能力范围内有多少只鱼不如自己可爱呢。请你帮这些可爱但是鱼脑不够用的小鱼们计算一下。
输入格式:第一行输入一个整数 n,表示鱼的数目,第二行内输入 n 个整数,用空格间隔,依次表示从左到右每只小鱼的可爱程度。
输出格式:在一行内输出 n 个整数,用空格间隔,依次表示每只小鱼眼中有多少只鱼不如自己可爱。

输入样例:
6
4 3 0 5 1 2
输出样例:
0 0 0 3 1 2

#! /usr/bin/python3
# _*_ coding: utf-8 _*_

# @Author:Hua
# @2021.05.19


#输入鱼🐟的总数量,input()、int()
#输入每条鱼的分数,使用 .split() ,将字符串fish_goal以空格" " 为间隔切分为列表存储
#定义一个list用于存放输出值

fish_number = int(input("input the number of fish: "))
fish_goal = input("input goal of each fish: ")
fish_goal_list = fish_goal.split(" ")
list = [0]

#遍历每一条鱼🐟,第一条鱼默认为0,所以从第二条鱼开始,number存放鱼认为分数低于自己的鱼的数量
for i in range(1,fish_number):
    number = 0

    #对该鱼的前置位进行遍历,从第0条鱼开始到自己前一条鱼结束,若前面的鱼比自己分数小,则number+1
    for j in range(0,i):
        if fish_goal_list[j] < fish_goal_list[i]:
            number = number + 1
    list.append(number)

#使用 ' '.join(list) 将list列表以空隔为间隔转化为字符串输出
#出现报错
str = ' '.join(list)
print(str)

input the number of fish: 6
input goal of each fish: 4 3 0 5 1 2
Traceback (most recent call last):
File "d:/Python/Untitled-2.py", line 29, in <module>
str = ' '.join(list)
TypeError: sequence item 0: expected str instance, int found


#但是当list中含有数字时,无法转换为字符串,所以遍历list并以字符进行输出
str = ' '.join('%s' %i for i in list)
print(str)


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM