网友年龄、生日蜡烛、方格填数

python语言做第七届蓝桥杯B组的题

1.网友年龄
某君新认识一网友。
当问及年龄时,他的网友说:
“我的年龄是个2位数,我比儿子大27岁,
如果把我的年龄的两位数字交换位置,刚好就是我儿子的年龄”

请你计算:网友的年龄一共有多少种可能情况?

提示:30岁就是其中一种可能哦.

请python编程,填写表示可能情况的种数。

for i in range(1,10):
    for j in range(0,10):
        if(i*10+j==j*10+i+27):
            print(i*10+j)

第一题结果
2.生日蜡烛
某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。

现在算起来,他一共吹熄了236根蜡烛。

请问,他从多少岁开始过生日party的?

请填写他开始过生日party的年龄数。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

for i in range(1,100):
    sum=0
    for j in range(i,100):
        sum=sum+j
        if(sum==236):
            print(i)
            continue

第二题结果
3.方格填数(这个题采用的最笨的方法–暴力枚举)
如下的10个格子
±-±-±-+
| | | |
±-±-±-±-+
| | | | |
±-±-±-±-+
| | | |
±-±-±-+

(如果显示有问题,也可以参看【图1.jpg】)

填入0~9的数字。要求:连续的两个数字不能相邻。
(左右、上下、对角都算相邻)

一共有多少种可能的填数方案?

请填写表示方案数目的整数。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。
第三题
第三题

sum=0
for a in range(10):
    for b in range(0,10):
        if(abs(b-a)==1 or a==b):
            continue
        for c in range(0,10):
            if(abs(c-b)==1 or c==b or c==a):
                continue
            for d in range(0,10):
                if(abs(d-a)==1 or a==d or d==b or d==c):
                     continue
                for e in range(0,10):
                    if(abs(e-a)==1 or abs(e-b)==1 or abs(e-d)==1 or e==a or e==b or e==c or e==d):
                        continue
                    for f in range(0,10):
                        if(abs(f-a)==1 or abs(f-b)==1 or abs(f-c)==1 or abs(f-e)==1 or f==a or f==b or f==c or f==d or f==e):
                            continue
                        for g in range(0,10):
                            if(abs(g-b)==1 or abs(g-c)==1 or abs(g-f)==1 or g==a or g==b or g==c or g==d or g==e or g==f):
                                continue
                            for h in range(0,10):
                                if(abs(h-d)==1 or abs(h-e)==1 or h==a or h==b or h==c or h==d or h==e or h==f or h==g):
                                    continue
                                for i in range(0,10):
                                    if(abs(i-d)==1 or abs(i-e)==1 or abs(i-f)==1 or abs(i-h)==1 or i==a or i==b or i==c or i==d or i==e or i==f or i==g or i==h):
                                        continue;
                                    for j in range(0,10):
                                        if(abs(j-e)==1 or abs(j-f)==1 or abs(j-g)==1 or abs(j-i)==1 or j==a or j==b or j==c or j==d or j==e or j==f or j==g or j==h or j==i):
                                            continue;
                                        sum=sum+1
print(sum)

第三题结果

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值
>