当前位置: 首页 > wzjs >正文

盐城中瑞做网站公司南宁网站快速排名提升

盐城中瑞做网站公司,南宁网站快速排名提升,专利申请,公司注册公司需要什么资料题目描述 考勤记录是分析和考核职工工作时间利用情况的原始依据,也是计算职工工资的原始依据,为了正确地计算职工工资和监督工资基金使用情况,公司决定对员工的手机打卡记录进行异常排查。 如果出现以下两种情况,则认为打卡异常…

题目描述

考勤记录是分析和考核职工工作时间利用情况的原始依据,也是计算职工工资的原始依据,为了正确地计算职工工资和监督工资基金使用情况,公司决定对员工的手机打卡记录进行异常排查。

如果出现以下两种情况,则认为打卡异常:

  1. 实际设备号与注册设备号不一样;
  2. 同一个员工的两个打卡记录的时间小于60分钟并且打卡距离超过5km。

给定打卡记录的字符串数组clockRecords(每个打卡记录组成为:工号、时间(分钟)、打卡距离(km)、实际设备号、注册设备号),返回其中异常的打卡记录(按输入顺序输出)。

输入描述

第一行输入为N,表示打卡记录数;之后的N行表示打卡记录,每一行表示一条打卡记录。

例如:

2
100000,10,1,ABCD,ABCD
100000,50,10,ABCD,ABCD

输出描述

输出为异常的打卡记录,例如:

100000,10,1,ABCD,ABCD;100000,50,10,ABCD,ABCD

备注

  1. clockRecords长度 <= 1000
  2. clockRecords[i]格式:{id},{time},{distance},{actualDeviceNumber},{registeredDeviceNumber}
  3. id由6位数字组成
  4. time由整数组成,范围为0~1000
  5. distance由整数组成,范围为0~100
  6. actualDeviceNumberregisteredDeviceNumber由4位大写字母组成

示例描述

示例一

输入:

2
100000,10,1,ABCD,ABCD
100000,50,10,ABCD,ABCD

输出:

100000,10,1,ABCD,ABCD;100000,50,10,ABCD,ABCD

说明:
第一条记录是异常的,因为第二条记录与它的间隔不超过60分钟,但是打卡距离超过了5km,同理第二条记录也是异常的。

示例二

输入:

2
100000,10,1,ABCD,ABCD
100000,80,10,ABCE,ABCD

输出:

100000,80,10,ABCE,ABCD

说明:
第二条记录的注册设备号与打卡设备号不一致,所以是异常记录。

示例三

输入:

2
100000,10,1,ABCD,ABCD
100000,80,10,ABCE,ABCE

输出:

null

说明:
无异常打卡记录,所以返回null

解题思路

  1. 用对象EmployeeRecord存储打卡记录,并先判断实际设备号与注册设备号是否一致。
  2. 将打卡记录存储在对象列表中
  3. 遍历打卡记录的列表:
    • 计算打卡时间
    • 计算打卡距离
    • 如果两个打卡记录时间小于60,并且打卡距离超过5km,打卡异常,设置vaildFalse
  4. 得到打卡异常的记录并返回字符串。

解题代码

def solve_method(clock_records):employee_records = []for record in clock_records:employee_record = EmployeeRecord(record[0], record[1], record[2], record[3], record[4])employee_record.set_vaild(employee_record.check_device_number())employee_records.append(employee_record)for i in range(len(employee_records)):for j in range(i + 1, len(employee_records)):if employee_records[i].id == employee_records[j].id:# 计算打卡时间time_diff = abs(employee_records[i].time - employee_records[j].time)# 计算打卡距离distance_diff = abs(employee_records[i].distance - employee_records[j].distance)# 如果两个打卡记录时间小于60,并且打卡距离超过5km,打卡异常if time_diff < 60 and distance_diff > 5:employee_records[i].vaild = Falseemployee_records[j].vaild = False# 得到打卡异常的记录result = ";".join(str(record) for record in employee_records if not record.vaild)return "null" if len(result) == 0 else resultclass EmployeeRecord:def __init__(self, id, time, distance, actual_device_number, registered_device_number):self.id = idself.time = timeself.distance = distanceself.actual_device_number = actual_device_numberself.registered_device_number = registered_device_number# 打卡是否合法self.vaild = Truedef set_vaild(self, vaild):self.vaild = vailddef __str__(self):return f"{self.id},{self.time},{self.distance},{self.actual_device_number},{self.registered_device_number}"def check_device_number(self):# 实际设备号与注册设备号不一致,打卡异常if self.actual_device_number == self.registered_device_number:return Truereturn Falseif __name__ == '__main__':clockRecords = [["100000", 10, 1, "ABCD", "ABCD"],["100000", 50, 10, "ABCD", "ABCD"]]assert solve_method(clockRecords) == "100000,10,1,ABCD,ABCD;100000,50,10,ABCD,ABCD"clockRecords = [["100000", 10, 1, "ABCD", "ABCD"],["100000", 80, 10, "ABCE", "ABCD"]]assert solve_method(clockRecords) == "100000,80,10,ABCE,ABCD"clockRecords = [["100000", 10, 1, "ABCD", "ABCD"],["100000", 80, 10, "ABCE", "ABCE"]]assert solve_method(clockRecords) == "null"

在这里插入图片描述

http://www.dtcms.com/wzjs/434889.html

相关文章:

  • 手机网站在线制作seo优化咨询
  • 易企秀网站开发语言百度网盘官方
  • 重庆有几个区几个县seo视频
  • 淘宝店网站建设规划书深圳网站优化哪家好
  • 三站合一的网站怎么做教程创意设计
  • 成都网站建设潮州哪些平台可以免费打广告
  • 做服装外贸哪个网站好运营推广怎么做
  • 商务网站建设方案网络营销推广经验总结
  • 哈 做网站短视频平台推广方案
  • 网站设计的概述厦门seo新站策划
  • 比较好的网站开发公司石家庄最新新闻事件
  • 网站建设询价采购百度快照客服
  • 广州网站建设信息科技有限公司百度推广如何办理
  • 网站开发岗位昆明seo技术培训
  • azure2019怎么做网站网站关键词优化案例
  • 做网站每个月可以赚多少钱seo优化网站的注意事项
  • 做赌博彩票网站吗seo营销方案
  • 手机端怎样做网站建设正规seo大概多少钱
  • 微信公众号做头图的网站常用的seo工具推荐
  • 给孩子做衣服的网站网站建设建站在线建站
  • 找公司做网站注意什么站长工具seo综合查询可以访问
  • 济南集团网站建设公司好国际最新消息
  • 玩具网站 下载阿森纳英超积分
  • 北京 做网站百度认证营销推广师
  • 公司网站可以免费建吗合肥搜索引擎优化
  • 网络科技公司取名福建网络seo关键词优化教程
  • 哈尔滨开网站电脑培训学校排名
  • sketch做网站线框图沈阳网站制作优化推广
  • 网站建设技术架构win7优化大师
  • 戴尔的网站建设有哪些主要特色网站推广优化之八大方法