2020年蓝桥杯赛题【python】

【填空】

1、既约分数

问题描述
在这里插入图片描述

import os
import sys
import math
# 请在此输入您的代码

count = 0
for i in range(1,2021):
  for j in range(1,2021):
    if math.gcd(i , j) == 1:
      count += 1

print(count)

2、七段码

问题描述

在这里插入图片描述

个人思路

  • 创建一个存放相邻字幕的字典A
  • 全排列所有的元素可能性
  • 判断每一个元素是否符合字典A

代码如下

import os
import sys

# 请在此输入您的代码
dic = {
  'a':['f', 'b'], 
  'b':['a', 'c', 'g'], 
  'c':['b', 'd', 'g'],
  'd':['e', 'c'], 
  'e':['d', 'f', 'g'], 
  'f':['a', 'e', 'g'],
  'g':['b', 'c', 'e', 'f']
  }

from itertools import combinations
from itertools import permutations

totle = []
for i in range(2, 8):
  a = list(combinations('abcdefg', i))    # 从字符串中生成i个子串的所有组合情况
  for j in a:
    totle.append(''.join(j))                # ['ab', 'ac', 'ad', ......]


sum = 0     # 统计合法的组合
for s in totle:
  for n in permutations(s):         # 对totle中的每一个元素都打乱顺序,遍历所有的排序情况,然后分别对照dic查看合不合法
    for i in range(len(n)-1):
      if n[i+1] not in dic[n[i]]:   # 只有所有字符彼此都在自己对应的value中才合法  例如 afd  af合法 但fd不合法 所以最终不合法
        break
    else:
      sum += 1
      break         # 所有排列组合中 只要有一种情况合法 说明其他情况肯定也合法

print(sum + 7)       # 最后加上只有一个亮的七种情况

3、单词分析

4、成绩统计

5、回文日期

6、门派制作

7、数字三角形

8、排序

9、成绩分析

10、跑步锻炼

11、蛇形填数

【程序设计】

1、子串分值

2、字串排序

3、平面切割

4、子串分值和

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值