去面试,问了一个问题:

员工请假了几天,刚好这几天与法定节假日有重合,那么法定节假日那几天就不算请假,请问重合的天数有几天(或者说实际请假几天)

让在白板上写代码,居然脑子也白了……

一出门就清醒了,方案就出来,可惜晚了

require 'date'#方法一,通过间断节假日是否在请假区间内,计算出与节假日重合的开始和结束日期
def calc_date(holiday_start,holiday_end, leave_start, leave_end)holiday_region = holiday_start..holiday_endif holiday_region.include? leave_start or holiday_region.include? leave_endd1 = holiday_start > leave_start ? holiday_start : leave_start;d2 = holiday_end > leave_end ? leave_end : holiday_end;return (d2-d1).to_i + 1end0
end#方法二.直接求两个区间的交集,看交集有几个元素就是几天
def calc_date2(holiday_start,holiday_end, leave_start, leave_end)leave = holiday_start..holiday_endholiday = leave_start..leave_end(holiday.to_a & leave.to_a).length
end#假期起始
holiday_start = Date.new(2015,9,22)
holiday_end = Date.new(2015,9,25)
#请假起始
leave_start = Date.new(2015,9,23)
leave_end = Date.new(2015,9,24)puts calc_date(holiday_start,holiday_end, leave_start, leave_end)
puts calc_date2(holiday_start,holiday_end, leave_start, leave_end)

转载于:https://www.cnblogs.com/varlxj/p/4499027.html

请假时碰到法定假期,实际请假几天?相关推荐

  1. 请假时长计算和每月工作天数计算

    绪论 请假时长计算和每月工作天数计算其实六月份开发OA系统时就已经写出来了,只是一直没时间去整理,其实最近也很忙,毕竟年底要清一些开发任务.不过感觉自己今年博客写的太少了,所以这些日子基本每天都在加班 ...

  2. 【泛微表单】请假流程中计算请假时长(非系统自带考勤类型)

    请假流程计算请假时长 按一天8小时计算,日期为浏览按钮日期字段,时间为单选下拉框: <script> var beginTimeId = {id: "field22286&quo ...

  3. Java计算请假时长(根据规则设置去除节假日、休息日、特殊日期)

    首先选择的日期要判断是不是节假日: 这里是写了工具类获取全年的日期信息. dateUtils工具类 某年第一天可以直接拼接 yyyy-01-01 获取节假日方法: public class DateU ...

  4. JS实现请假时长计算(计算小时数差)

    给公司做了一套系统,涉及到请假单功能开发.在计算请假时长这块总结一下:按天计算的就不总结了比较简单,这里总结一下按小时数计算的 ,话不多说,直接上代码 // 获取两个日期相差的工作小时(不包括节假日) ...

  5. mysql员工请假流程表字段_“员工请假”流程及在线表单开发示例

    1. "员工请假"流程及在线表单开发示例 1.1. 描述 通过本示例达到快速对F2流程管理平台的在线表单速讯上手及零编码式的开发.实现一个以请假为示例的流程及在线表单,及请假数据的 ...

  6. 深度学习——训练时碰到的超参数

    深度学习--训练时碰到的超参数 文章目录 深度学习--训练时碰到的超参数 一.前言​ 二.一些常见的超参数 学习率(Learning rate) 迭代次数(iteration) batchsize e ...

  7. Linux安装gcc时碰到的有关问题解决(解决gcc依赖有关问题)

    Linux安装gcc时碰到的有关问题解决(解决gcc依赖有关问题) 参考文章: (1)Linux安装gcc时碰到的有关问题解决(解决gcc依赖有关问题) (2)https://www.cnblogs. ...

  8. 安装完Pycharm,启动时碰到“failed to load jvm dll“的解决方案

    安装完Pycharm,启动时碰到"failed to load jvm dll"的解决方案 参考文章: (1)安装完Pycharm,启动时碰到"failed to loa ...

  9. Delphi XE 10.2.3使用CEF4Delphi取网页元素时碰到nbsp;变问号?的处理

    用CEF4Delphi取网页元素时碰到ElementInnerText里含有" " 比如网页源码里是"内容 "取出来显示就变成"内容?" 搜 ...

  10. 修改资料时碰到的问题,

    今天做修改会员资料时碰到的问题: 代码如下: if(Session["Userid"]!=null)    {     if(!Page.IsPostBack) // 注意必须在这 ...

最新文章

  1. CSS - 解决placeholder不起作用的方法
  2. maven WEB项目启动没问题访问页面就报错:org.apache.jasper.JasperException: Unable to compile class for JSP
  3. 【Linux】5_进程管理
  4. windows中端口号(port id)和port的区别,如何通过端口查看进程pid,如何通过pid查看程序,如何通过pid查看端口?
  5. 二十年后我发明了保姆机器人作文_五年级作文:二十年后的家乡(张羽彤)
  6. 2019年JAVA比较火的框架_2019年Java技术中当前流行的三大框架
  7. pythonidea_idea集成python插件
  8. SAP Analytics Cloud和SAP Cloud for Customer的集成
  9. python namespace unique_Python使用uuid库生成唯一标识ID
  10. 《Windows PowerShell实战指南(第2版)》——1.4 搭建自己的实验环境
  11. Could not load the btn_020.disable.png image referenced from a nib in the bundle with identifier ...
  12. java安卓开发 项目实例_Java系列--第七篇 基于Maven的Android开发实战项目
  13. centos7.4 update git
  14. 出纳使用的计算机如何管理,出纳杂谈:浅谈出纳工作的创新
  15. 烽火电信光猫语音鉴权密码及超级密码获取方法
  16. python俄罗斯方块代码idle_Python编写的俄罗斯方块游戏案例源码详解,PYQT4
  17. MAC-重新安装系统的三种方法
  18. 半闲居士视觉SLAM十四讲笔记(5)相机与图像 - part 2 图像及 OpenCV 操作、点云拼接
  19. python可读性好吗_Python 输出可读性更好的时间文本
  20. 文本摘要评测工具ROUGE的搭建和测试

热门文章

  1. ArcFace免费人脸识别 Demo [Android]
  2. python对象之间的关系
  3. Kotlint集合简单总结
  4. 为什么我不再和别人比较了?
  5. 【CVPR2005】梯度方向直方图(Histogram of Oriented Gradients,简称HOG)
  6. 【Webcam设计】客户机与程序之间的通信cv::imencode/imdecode与 std::ifstream file与imread/imwrite方式
  7. 【Webcam设计】x264编码实现
  8. mybatis-generator生成的mapper中的
  9. max/sup、min/inf辨析
  10. 7-28 搜索树判断(25 分)