美文网首页
强迫症老板和他的洗碗工

强迫症老板和他的洗碗工

作者: ccpjsg | 来源:发表于2020-10-30 15:52 被阅读0次

故事呢,比较简单。有个餐馆老板,给他的十个碗编号为0-9。他有强迫症,要求他的洗碗工洗碗叠起来的时候,必须小号在下,大号在上的原则叠放。当客人拿碗的时候,老板就记下编号。这样,老板就可以通过编号判断洗碗工是不是按照要求来洗碗。比如老板记下4321056789,这个编号表明工人是按照要求来写的。但是老板记下4231089765的时候,老板就知道工人没有按照要求来写。

我用python这个语言来写。根据老板记下的编号来判断洗碗工是否按照要求来叠放碗。

这个题目从开始看到至我解决,花了两天吧。似乎是昨天上午看到(最近记性也不好了,具体什么时候也记不清了),今天下午两点半解决。解决的时候,我也并不是很清楚。现在写这个文章就是为了能想的更透彻一点。

先贴上我的代码,再按照代码来分析。

def pan(por):
    s=[]
    ma=0
    for i in por:
        num=int(i)
        if s==[]:
            s.extend(list(range(ma,num)))
            ma=num+1
        else:
            if num==s[-1]:
                s.pop()
            elif num<s[-1]:
                return False
            elif num>s[-1]:
                s.extend(list(range(ma,num)))
                ma=num+1
    if s==[]:
        return True


por = input()
if pan(por):
    print('Yes')
else:
    print('No')

首先,整体结构当然是输入老板的编号记录,以字符串形式,然后用函数pan判断。如果洗碗工按照老板要求则返回真True,打印Yes。如果没有按照要求,则是选择结构的else分支,打印No。

下面,就来说说这个判断函数pan的结构。我的想法是当顾客拿到一个盘子后,就可以先判断盘子的叠放情况。初始化一个栈结构,因为盘子叠放明显是一个栈结构问题。这个栈是去除这个盘子编号的,代表已经被拿走了。然后下一个编号,如果这个编号等于栈顶,那说明正好是拿了刚才的下一个碗。如果小于栈顶,那肯定不行,因为跳过了,这时候直接返回False,不用再判断剩下的碗编号了。如果大于栈顶。说明这时候洗碗工又洗了几个碗放上去了。这时候需要再入栈操作。这时候需要注意标记好之前栈的最大编号。以免重复入栈碗的编号。

最后,如果碗是正确叠放的,那栈肯定为空。那么就返回真True。

目前呢,就想到这么一些。栈嘛,先进后出,后进先出。想一万遍。

相关文章

  • 强迫症老板和他的洗碗工

    故事呢,比较简单。有个餐馆老板,给他的十个碗编号为0-9。他有强迫症,要求他的洗碗工洗碗叠起来的时候,必须小号在下...

  • (发现错误,处理中)MOOC数据结构与算法Python版:强迫症

    题目内容 洗碗工小明碰上了一位强迫症老板老王,餐厅一共就10只盘子,老板给仔细编上了0~9等10个号码,并要求小明...

  • 洗碗工

    如果今天我把故事讲给朋友,我的朋友一定会觉得“你怎么这么惨”。 是啊,我现在蹲在知味观的门前,刚刚看了一个像90年...

  • 王老板和黄老板

    王老板要洗碗, 黄老板要吸管; 王老板问黄老板要吸管; 黄老板问王老板要洗碗; 黄老板帮王老板洗碗; 王老板给黄老...

  • 洗碗工的收获

    洗碗工的突然离职(眼疾,需要马上住院接受手术),给我来了个措手不及,连想都没想过,直接顶上去的就是我。 每年的冬天...

  • 小小洗碗工

    一超市门口的冰柜边站着一位衣着邋遢的小女孩,大约五六岁的样子,身体瘦弱,娇小玲珑,看上去要比她实际年龄小得多。她...

  • 如何护理、保养智能餐厅洗碗机

    智能洗碗机的护理包括两个方面:洗碗工自行护理、工程师每月定期上门护理。接下来,厨芯将先为您解析洗碗工应该如何对洗碗...

  • 微小说:洗碗工

    应聘者:老板,我工资拿再少都没关系,我就想当个洗碗工。 老板:不行,我们这里够人了。 应聘者灰心地在饭店点了几个大...

  • 被辞退的洗碗工

    嫂子,我把人给你送过来了! 正在忙碌的老板娘开心的看着这个本家兄弟,又用会意的眼神点了点头。 这几天小饭馆儿里正缺...

  • 完美的洗碗工

    回家来,听见宝宝娘吩咐宝宝:“洗碗去。” 这令我惊喜异常。 人生都有第一次。 第一次学会帮助大人干活,第一次正式主...

网友评论

      本文标题:强迫症老板和他的洗碗工

      本文链接:https://www.haomeiwen.com/subject/tzddvktx.html