华为OD机试-考勤信息

代码实现

# coding: utf-8
import numpy


class Solution:
    def chuqinInfo(self, n, arrs):
        res = []
        for i in range(n):
            arr = arrs[i]
            count = 0
            for s in arr:
                if str(s) == 'absent':
                    count += 1
            if count > 1:
                res.append('False')
                continue
            for i in range(len(arr) - 1):
                a = arr[i]
                b = arr[i + 1]
                if a in ('late', 'leaveearly') and b in ('late', 'leaveearly'):
                    res.append('False')
                    break
            for i in range(len(arr)):
                tmp = arr[i:1 + 7]
                counts = 0
                for ss in tmp:
                    if str(ss) == 'absent' or str(ss) == 'late' or str(ss) == 'leaveearly':
                        counts += 1
                if counts > 3:
                    res.append('False')
            else:
                res.append('True')
        return res


if __name__ == '__main__':
    n = int(input("input n:"))
    arrs = [0 for _ in range(n)]
    for i in range(n):
        arr = numpy.array(input('input arr:').split(' '))
        arrs[i] = arr
    solution = Solution()
    print(solution.chuqinInfo(n, arrs))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值