Python:1014 福尔摩斯的约会

一、题目

在这里插入图片描述

二、代码

思路
题目还是要好好读,折腾半天发现还是题目没有读明白,第一对,第二对,人家不光字母相等,关键是对应位置也是相等的

注意
第一个字母在 [A-G]内第二个字母在[A-N]或者[0-9]可以借助正则实现

由于需要相同位置的字母相同,所以判断可以用 range(min(len(s1),len(s2))),选择最小长度的开始比较

import re
string1 = input()
string2 = input()
string3 = input()
string4 = input()

day = {1:'MON',2:'TUE',3:'WED',4:'THU',5:'FRI',6:'SAT',7:'SUN'}

result = []

def test1(s1,s2):
    for i in range(min(len(s1),len(s2))):
        if s1[i] == s2[i]:
            if len(result)==0 and re.findall(r'[A-G]',s1[i]):
                temp = ord(s1[i]) - ord('A') + 1
                temp = day[temp]
                result.append(temp)
            elif len(result)==1 and re.findall(r'[A-N]|[0-9]',s1[i]):
                if re.findall(r'[A-N]',s1[i]):
                    temp = ord(s1[i]) - ord('A') + 1
                    temp = str(temp+9)
                    result.append(temp)
                    return
                else:
                    temp = '0' + s1[i]
                    result.append(temp)
                    return
def test2(s1,s2):
    for i in range(min(len(s1),len(s2))):
        if s1[i].isalpha():
            if s1[i] == s2[i]:
                if i < 10:
                    temp = '0' + str(i)
                    result.append(temp)
                    return
                else:
                    result.append(str(i))
                    return

test1(string1,string2)
test2(string3,string4)

print("%s %s:%s" % (result[0],result[1],result[2]))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

南淮北安

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

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

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

打赏作者

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

抵扣说明:

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

余额充值