美团2024年春招第一场笔试【测试方向】验证工号(C++完整代码)

3.验证工号

假设美团的工号是由18位数字组成的,由以下规则组成:

  • 前面6位代表是哪个部门
  • 7-14位代表是出生日期,范围是1900.01.01-2023.12.31
  • 15-17位代表是哪个组,不能是完全一样的3位数字
  • 18位是一位的校验和,假设是 x ,则需要满足(+1+2+3+4+...+17)  8=1(x+a1​+a2​+a3​+a4​+...+a17​) mod 8=1 ,1−17a1​−a17​ 代表了前面的17位数字

现在需要写一份代码,判断输入的工号是否符合对应的规则。

提示:出生日期这里需要判断闰年。闰年判断的条件是能被 4 整除, 但不能被 100 整除;或能被 400 整除。

时间限制:C/C++ 1秒,其他语言2秒

空间限制:C/C++ 256M,其他语言512M

示例1

输入例子:

2
123456
123457
1
123456202312120636

输出例子:

ok

示例2

输入例子:

1
123455
1
123456202312120633

输出例子:

error

例子说明:

部门号不对

你可能感兴趣的:(算法,c++,数据结构)