GESP3O3372. [三级原创] 身份证

提交1 通过1
通过率100%
时间限制1000ms
内存限制128MiB

题目描述

题目描述

身份证号码由十七位数字本体码和一位校验码组成。排列顺序从左到右依次为:六位数字“地址码”、八位数字“出生日期码”、三位数字“顺序码”和一位“校验码”。

“地址码”用来表示公民常住户口所在地区的行政区划代码。“出生日期码”表示公民的出生年、月、日。“顺序码”表示在同一“地址码”所表示的区域范围内,对同年、同月、同日出生的人编定的顺序号;顺序码的奇数分配给男性,偶数分配给女性。

“校验码”根据前面十七位数字计算得到,方法为:

  1. 将前面的 17 位数字分别乘以不同的系数。从第 1 位到第 17 位的系数分别为:7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2;
  2. 将这 17 位数字和系数相乘的结果相加;
  3. 用加出来的和除以 11,得到余数;
  4. 余数只可能是 0~10,对应的校验码分别是:1 0 X 9 8 7 6 5 4 3 2(X 是大写)。也就是说余数为 2 时校验码是 X,余数为 10 时校验码是 2。

现在你只记得自己身份证上的前 17 位,能否不用回家拿身份证就知道最后一位是多少?

输入格式

一行 17 个整数,依次表示身份证号码的前 17 位数字。

输出格式

输出一位校验码,可能是数字或大写字母 X。

样例 1

输入

4 4 2 0 0 0 1 9 9 6 0 1 0 1 0 2 3

输出

4

输入样例 #2

1 6 8 4 3 7 6 2 5 4 10 1 1 7 5 4 2 

输出样例 #2

X

输入样例 #3

0 1 3 4 6 0 7 0 2 1 10 7 1 2 9 4 1 

输出样例 #3

7