当前位置:   article > 正文

2021蓝桥杯(Python)骗分指南_蓝桥杯骗分导论

蓝桥杯骗分导论

明天就考试了,紧张啊~

回顾了一下之前写过的一些程序,把最基本的整理了出来,希望关键时候别再忘了呀!小伙伴们,明天加油!

目录

如何输入1个整数

如何输入两个整数,中间空格隔开

如何输入一行整数,空格隔开,储存至一列表

创建一列表(二维列表、全零列表)

进制转换

储存单位转换问题

有(无)向图 边数问题

二叉树 叶子数问题

Ascii值转换

BFS基本例题

DFS基本例题

BFS最短路径问题


如何输入1个整数

n=int(input())

如何输入两个整数,中间空格隔开

A,B=map(int,input().split(' '))

如何输入一行整数,空格隔开,储存至一列表

nums=[int(i) for i in input().split()]    

创建一列表(二维列表、全零列表)

  1. n=10
  2. a=[[] for i in range(n)] #二维列表
  3. >>>a
  4. [[], [], [], [], [], [], [], [], [], []]
  5. c=[[]]*n
  6. >>>c
  7. [[], [], [], [], [], [], [], [], [], []] #二维列表
  8. b=[0 for i in range(n)] #全零列表
  9. >>>b
  10. [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
  11. d=[0]*n
  12. >>>d
  13. [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] #全零列表
  14. e=[]*n
  15. >>>e
  16. []

进制转换

  1. >>>a=bin(5) #将5转化为二进制
  2. '0b101'
  3. >>> hex(17) #将十进制17转化为十六进制'0x11'
  4. '0x11'
  5. >>> bin(5) #将十进制5转化为十六进制'0b101'
  6. '0b101'
  7. >>> oct(9) #将十进制9转化为八进制'0o11'
  8. '0o11'
  9. >>> int('11',2) #将二进制'11'转化为十进制3
  10. 3
  11. >>> int('18',16) #将八进制'18'转化为十进制24
  12. 24
  13. >>> int('24',8) #将二进制'24'转化为十进制20
  14. 20

储存单位转换问题

<p>【问题描述】<br>在计算机存储中,12.5MB是多少字节?<br>【答案提交】<br>这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。<br><br><br><br></p>

>>> 12.5*1024*1024
13107200

二进位bit
字节1Byte=8个二进位
1KB=1024B
1MB=1024KB
1GB=1024MB
1TB=1024GB

有(无)向图 边数问题

<p>【问题描述】<br>一个包含有2019个结点的有向图,最多包含多少条边?(不允许有重边)<br>【答案提交】<br>这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。<br><br><br></p>

>>> 2019*2018
4074342

有向图: n个节点,最多n(n-1)条边,最少 n 条边
无向图:n个节点,最多 n(n-1)/2 条边,最少n-1 条边(没有自环和重边)

拥有最多边(弧)的图叫完全图。

二叉树 叶子数问题

【问题描述】
一棵包含有2019个结点的二叉树,最多包含多少个叶结点?
【答案提交】
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

>>>(2019+1)/2

1010

Ascii值转换

  1. AA=ord('a') # crd()函数就是用来返回单个字符的ascii值(0-255)
  2. BB=chr(65) # chr()函数是输入一个整数[0,255]返回其对应的ascii符号
  3. >>>print(AA)
  4. 97
  5. >>>print(BB)
  6. 'A'

BFS基本例题

  1. graph={'A':['B','C'],
  2. 'B':['A','C'],
  3. 'C':['B','A'],
  4. 'D':['B','C','E'],
  5. 'E':['D','C','B'],
  6. 'F':['D']}
  7. def BFS(graph,s):
  8. queue=[]
  9. queue.append(s)
  10. seen=[]
  11. seen.append(s)
  12. while len(queue)>0:
  13. vertex=queue.pop(0)
  14. nodes=graph[vertex]
  15. for i in nodes:
  16. if i not in seen:
  17. queue.append(i)
  18. seen.append(i)
  19. print(vertex)
  20. BFS(graph,'E')
  21. >>>
  22. E
  23. D
  24. C
  25. B
  26. A

DFS基本例题

  1. graph={'A':['B','C'],
  2. 'B':['A','C','D'],
  3. 'C':['B','A','D','E'],
  4. 'D':['B','C','E','F'],
  5. 'E':['D','C'],
  6. 'F':['D']}
  7. def DFS(graph,s):
  8. stack=[]
  9. stack.append(s)
  10. seen=[]
  11. seen.append(s)
  12. while len(stack)>0:
  13. vertex=stack.pop()
  14. nodes=graph[vertex]
  15. for i in nodes:
  16. if i not in seen:
  17. stack.append(i)
  18. seen.append(i)
  19. print(vertex)
  20. DFS(graph,'E')
  21. >>>
  22. E
  23. C
  24. A
  25. B
  26. D
  27. F

BFS最短路径问题

  1. graph={'A':['B','C'],
  2. 'B':['A','C','D'],
  3. 'C':['B','A','D'],
  4. 'D':['B','C','E','F'],
  5. 'E':['D','C'],
  6. 'F':['D']}
  7. def BFS(graph,s):
  8. queue=[]
  9. queue.append(s)
  10. seen=[]
  11. seen.append(s)
  12. parent={s:None}
  13. while len(queue)>0:
  14. vertex=queue.pop(0)
  15. nodes=graph[vertex]
  16. for w in nodes:
  17. if w not in seen:
  18. queue.append(w)
  19. seen.append(w)
  20. parent[w]=vertex
  21. #print(vertex)
  22. return parent
  23. parent=BFS(graph,'E') # E 终点
  24. ''' #输出从B到E的最短路径
  25. v='B'
  26. while v!=None:
  27. print(v)
  28. v=parent[v]
  29. '''
  30. v='B' # B 起点
  31. way=[]
  32. while v!=None:
  33. way.append(v)
  34. v=parent[v]
  35. print(way,len(way))

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/553401
推荐阅读
相关标签
  

闽ICP备14008679号