ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

蓝桥杯python基础练习

2022-03-02 19:05:37  阅读:216  来源: 互联网

标签:end python 练习 兔子 蓝桥 芯片 测试 print sin


龟兔赛跑预测

话说这个世界上有各种各样的兔子和乌龟,但是研究发现,所有的兔子和乌龟都有一个共同的特点——喜欢赛跑。于是世界上各个角落都不断在发生着乌龟和兔子的比赛,小华对此很感兴趣,于是决定研究不同兔子和乌龟的赛跑。他发现,兔子虽然跑比乌龟快,但它们有众所周知的毛病——骄傲且懒惰,于是在与乌龟的比赛中,一旦任一秒结束后兔子发现自己领先t米或以上,它们就会停下来休息s秒。对于不同的兔子,t,s的数值是不同的,但是所有的乌龟却是一致——它们不到终点决不停止。
  然而有些比赛相当漫长,全程观看会耗费大量时间,而小华发现只要在每场比赛开始后记录下兔子和乌龟的数据——兔子的速度v1(表示每秒兔子能跑v1米),乌龟的速度v2,以及兔子对应的t,s值,以及赛道的长度l——就能预测出比赛的结果。请你写一个程序,对于输入的一场比赛的数据v1,v2,t,s,l,预测该场比赛的结果。
输入格式
  输入只有一行,包含用空格隔开的五个正整数v1,v2,t,s,l,其中(v1,v2<=100;t<=300;s<=10;l<=10000且为v1,v2的公倍数)
输出格式
输出包含两行,第一行输出比赛结果——一个大写字母“T”或“R”或“D”,分别表示乌龟获胜,兔子获胜,或者两者同时到达终点。
  第二行输出一个正整数,表示获胜者(或者双方同时)到达终点所耗费的时间(秒数)。

v1,v2,t,s,l = map(int,input().split())
if v1<=100 and v2<=100 and t<=300 and s<=10 and l<=10000 and l%v1==0 and l%v2==0:
    s1,s2,i = 0,0,0
    while s1<l and s2<l:
        s1,s2,i=v1+s1,v2+s2,i+1
        if s1==l or s2==l:
            break
        elif s1-s2>=t:
            s2,i=s2+v2*s,i+s
    if s1>s2:print('R')
    if s1==s2:print('D')
    if s1<s2:print('T')
    print(i)

在这里插入图片描述
芯片测试

有n(2≤n≤20)块芯片,有好有坏,已知好芯片比坏芯片多。
  每个芯片都能用来测试其他芯片。用好芯片测试其他芯片时,能正确给出被测试芯片

是好还是坏。而用坏芯片测试其他芯片时,会随机给出好或是坏的测试结果(即此结果与

被测试芯片实际的好坏无关)。
  给出所有芯片的测试结果,问哪些芯片是好芯片。
输入格式
  输入数据第一行为一个整数n,表示芯片个数。
  第二行到第n+1行为n*n的一张表,每行n个数据。表中的每个数据为0或1,在这n行

中的第i行第j列(1≤i, j≤n)的数据表示用第i块芯片测试第j块芯片时得到的测试结果,1

表示好,0表示坏,i=j时一律为1(并不表示该芯片对本身的测试结果。芯片不能对本身

进行测试)。
输出格式
  按从小到大的顺序输出所有好芯片的编号

"""
理解下题目,好的芯片测试别的芯片就是正确的结果,
坏的就是随机的结果,题目中又说,第i,j位置的含义为i芯片测试j芯片的结果,
那么,第j列就是其他芯片测试j的结果,题目中说好的好芯片的数量大于坏芯片的数量,
那么我们就统计j列的数字1多点还是0多点,就可以判断芯片的好坏了"""
n=int(input())
if n>1 and n<21:
    test = [[]*n]*n
    for i in range(n):#往数组中添加原始记录
        test[i] = [int(j) for j in input().split()] 
    for j in range(n):
        tra = 0
        #定义一个光标,该位置为1的光标加1
        for i in range(n):
            if test[i][j]==1:
                tra +=1
        if tra > int(n/2):
            print(j+1,sep=' ',end=' ')

在这里插入图片描述

FJ的字符串

问题描述
  FJ在沙盘上写了这样一些字符串:
  A1 = “A”
  A2 = “ABA”
  A3 = “ABACABA”
  A4 = “ABACABADABACABA”
  … …
  你能找出其中的规律并写所有的数列AN吗?
输入格式
  仅有一个数:N ≤ 26。
输出格式
  请输出相应的字符串AN,以一个换行符结束。输出中不得含有多余的空格或换行、

回车符。
样例输入
3
样例输出
ABACABA

"""
完全二叉树思想+递归
F1=A
A1=F1=A

F2=BF1=BA
A2=F1F2=ABA

F3=CF1F2=CABA
A3=F1F2F3=ABACABA
"""

def Tn(n):
    if n==1:
        print('A',end='')
    else:
        Tn(n-1)
        print(chr(65+n-1),end='')
        Tn(n-1)
    return ''

n=int(input())
Tn(n)

在这里插入图片描述
Sine之舞

An=sin(1–sin(2+sin(3–sin(4+…sin(n))…)
  Sn=(…(A1+n)A2+n-1)A3+…+2)An+1
  FJ想让奶牛们计算Sn的值,请你帮助FJ打印出Sn的完整表达式,以方便奶牛们做题。
输入格式
  仅有一个数:N<201。
输出格式
  请输出相应的表达式Sn,以一个换行符结束。输出中不得含有多余的空格或换行、回

车符。
样例输入
3
样例输出
((sin(1)+3)sin(1–sin(2))+2)sin(1–sin(2+sin(3)))+1

"""
A1=sin1
S1=A1+1=sin1+1

A2=sin(1-sin2)
S2=(A1+2)A2+1=(sin1+2)sin(1-sin2)+1

A3=sin(1-sin(2+sin(3)))
S3=((A1+3)A2+2)A3+1=((sin1+3)sin(1-sin2)+2)sin(1-sin(2+sin(3)))+1
"""

def An(n):
    for i in range(1,n+1):
        if i!=n:
            print('sin(',i,sep='',end='')
            if i%2:
                print('-',end='')
            else:
                print('+',end='')
        else:
            print('sin',n,sep='',end='')
            for j in range(n-1):
                print(')',end='')
    return ''
                
def Sn(n):
    for j in range(n-1):
        print('(',end='')
    for i in range(1,n+1):
        if i!=n:
            print(An(i),'+',n+1-i,')',sep='',end='')
        else:
            print(An(n),'+1',sep='',end='')
    return ''
            
n=int(input())
Sn(n)

在这里插入图片描述
数的读法

标签:end,python,练习,兔子,蓝桥,芯片,测试,print,sin
来源: https://blog.csdn.net/shanshuyue/article/details/123237231

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有