【一眼秒杀】三道蓝桥杯真题(一)

一、奇怪的捐赠

#暴力算法
n = 1000000              
num=[7**i for i in range(10)]
# for m in num:
#   print(m)  100万以内7的若干次方数有几个,从而定义几个循环
for a in range(1,5):
    for b in range(1,5):
        for c in range(1,5):
            for d in range(1,5):
                for g in range(1,5):
                    for e in range(1,5):
                        for f in range(1,5):
                            for h in range(1,5):
                                if a*num[0]+b*num[1]+c*num[2]+d*num[3]+g*num[4]+e*num[5]+f*num[6]+h*num[7]==n:
                                    # print(a,b,c,d,g,e,f,h)  代表份数
                                    print(a+b+c+d+g+e+f+h)  
# 解法2
a=1000000
cut=0
for i  in range(7,-1,-1): #7的7次方不超过100w
  for j in range(5): #相同份数不超过5
    if (a-7**i)>=0:
      a-=7**i
      cut+=1
    else:
      break
print(cut)

二、IP 补充

print(255)
“∗”代表的数字最大可能是255,因为这是IP地址每个段可以取的最大值。

三、出现最多的字符

下面的矩阵中包含 ABCDEF 六种字符,请问出现最多的字符出现了几次?

FFEEFEAAECFFBDBFBCDA
DACDEEDCCFFAFADEFBBA
FDCDDCDBFEFCEDDBFDBE
EFCAAEECEECDCDECADDC
DFAEACECFEADCBFECADF
DFBAAADCFAFFCEADFDDA
EAFAFFDEFECEDEEEDFBD
BFDDFFBCFACECEDCAFAF
EFAFCDBDCCBCCEADADAE
BAFBACACBFCBABFDAFBE
FCFDCFBCEDCEAFBCDBDD
BDEFCAAAACCFFCBBAAEE
CFEFCFDEEDCACDACECFF
BAAAFACDBFFAEFFCCCDB
FADDDBEBCBEEDDECFAFF
CDEAFBCBBCBAEDFDBEBB
BBABBFDECBCEFAABCBCF
FBDBACCFFABEAEBEACBB
DCBCCFADDCACFDEDECCC
BFAFCBFECAACAFBCFBAF

#解法1
#将一个字符串赋值给变量a
a = "FFEEFEAAECFFBDBFBCDADACDEEDCCFFAFADEFBBAFDCDDCDBFEFCEDDBFDBEEFCAAEECEECDCDECADDCDFAEACECFEADCBFECADFDFBAAADCFAFFCEADFDDAEAFAFFDEFECEDEEEDFBDBFDDFFBCFACECEDCAFAFEFAFCDBDCCBCCEADADAEBAFBACACBFCBABFDAFBEFCFDCFBCEDCEAFBCDBDDBDEFCAAAACCFFCBBAAEECFEFCFDEEDCACDACECFFBAAAFACDBFFAEFFCCCDBFADDDBEBCBEEDDECFAFFCDEAFBCBBCBAEDFDBEBBBBABBFDECBCEFAABCBCFFBDBACCFFABEAEBEACBBDCBCCFADDCACFDEDECCCBFAFCBFECAACAFBCFBAF"
a = a.count(max(a))   #计算字符串a中出现次数最多的字符(通过max(a)找到)
print(a)              #然后计算这个字符在字符串a中出现的次数(通过a.count()方法)
                      #最后将这个次数赋值给变量a。

#解法2 循环遍历判断+1
matrix = "FFEEFEAAECFFBDBFBCDADACDEEDCCFFAFADEFBBAFDCDDCDBFEFCEDDBFDBEEFCAAEECEECDCDECADDCDFAEACECFEADCBFECADFDFBAAADCFAFFCEADFDDAEAFAFFDEFECEDEEEDFBDBFDDFFBCFACECEDCAFAFEFAFCDBDCCBCCEADADAEBAFBACACBFCBABFDAFBEFCFDCFBCEDCEAFBCDBDDBDEFCAAAACCFFCBBAAEECFEFCFDEEDCACDACECFFBAAAFACDBFFAEFFCCCDBFADDDBEBCBEEDDECFAFFCDEAFBCBBCBAEDFDBEBBBBABBFDECBCEFAABCBCFFBDBACCFFABEAEBEACBBDCBCCFADDCACFDEDECCBFAFCBFECAACAFBCFBAF"
count_A,count_B,count_C,count_D,count_E,count_F = 0,0,0,0,0,0
for zimu in matrix:
    if zimu == "A":
        count_A += 1
    elif zimu == "B":
        count_B += 1
    elif zimu == "C":
        count_C += 1
    elif zimu == "D":
        count_D += 1
    elif zimu == "E":
        count_E += 1
    elif zimu == "F":
        count_F += 1
print(max(count_A,count_B,count_C,count_D,count_E,count_F))

每天持续更新~ 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小陈从不熬夜

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值