python逻辑题

这篇博客讲述了作者在找工作中遇到的一道逻辑题,涉及将字母通过特定规则编码的过程。题目要求根据日期(月份和日期)对27个字符进行分组左移,并按字符位置编码为数字。博客提供了输入输出示例以及解题代码,适用于理解Python逻辑处理和编码问题。
摘要由CSDN通过智能技术生成

最近开始在找工作了,昨天接了一家公司的笔试。形式是线上笔试。笔试题目是逻辑题。
题目如下:
李雷和韩梅梅坐前后排,上课想说话怕被老师发现,所以改为传纸条。为了不被老师发现他们纸条上写的是啥,,他们约定了如下方法传递信息:

将26个大写英文字母,外加空格,一共27个字符分成三组,每组9个。也就是ABCDEFGHI是第一组,JKLMNOPQR是第二组,STUVWXYZ是第三组(此处用代表空格)。

先根据月份数m,一整个分组为单位进行左移,移动(m-1)次。

然后根据日期数d,对每个分组内的字符进行循环左移,移动(n-1)次。

以3月8日为例,首先移动分组3-1=2次,变成:

STUVWXYZ* ABCDEFGHI JKLMNOPQR21

然后每组内字符移动8-1 = 7次,最终编码为:

Z*STUVWXY HIABCDEFG QRJKLMNOP

对于要传递的信息中的每个字符,用组号和组内序号两个数字来表示。

如果在3月8日传递信息 “HAPPY”,那么H位于第2组的第1个,A位于第二组 第3个 …一次类推,纸条上会写成:

21,23,39,39,19

输入要求:

每个输入包含两行。第一行使用空格分隔的两个数字,第一个数字是月份,第二个数字是日期。输入保证是一个合法日期。

第二个行为需要编码的字符串,仅由A~Z和空格组成,长度不超过1024个字符

输出规范:

对每个输入,打印对应的编码,数字之间用空格分隔,每个输出占一行。

输入示例:

1 1

HI

输出示例:

18 19

解题代码:

item_1 = ['A','B','C','D','E','F','G','H','I']
item_2 = ['J','K','L','M','N','O','P','Q','R']
item_3 = ['S','T','U','V','W','X'
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值