CZ‘s ID Card

2023-11-29 19:28
文章标签 id card cz

本文主要是介绍CZ‘s ID Card,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

描述

你有身份证吗?你必须在家庭户口簿上登记身份证号码。从身份证上你可以得到每个人的具体个人信息。这个数字有18位,前17位包含特殊含义:前6位代表你来自哪个地区,后8位代表你的生日。

这里是代表你所在地区的代码。

{{11,"Beijing"},{12,"Tianjin"},{13,"Hebei"},{14,"Shanxi"},{15,"Menggu"},{21,"Liaoning"}, {22,"Jilin"}, {23,"Heilongjiang"},{31,"Shanghai"},{32,"Jiangsu"},{33,"Zhejiang"},{34,"Anhui"},{35,"Fujian"},{36,"Jiangxi"},{37,"Shandong"},{41,"Henan"},{42,"Hubei"},{43,"Hunan"},{44,"Guangdong"},{45,"Guangxi"},{46,"Hainan"},{50,"Chongqing"}, {51,"Sichuan"},{52,"Guizhou"},{53,"Yunnan"},{54,"Tibet"},{61,"Shanxi"},{62,"Gansu"},{63,"Qinghai"}, {64,"Ningxia"}, {65,"Xinjiang"}, {71,"Taiwan"},{81,"Hong Kong"},{82,"Macao"}}

然而,在你的身份证中,可能只有33出现,0000被其他数字代替。

这是Samuel的身份证号码331004198910120036你知道他是哪里人吗?前两个数字表示他是浙江省人,19891012是他的生日(年月日)。

输入

输入将包含2部分:第一行是数字n,这里的n表示有n个测试用例。对于每个测试用例,都有一个ID卡号字符串。

输出

根据表输出他来自哪里以及他的生日是什么时候。您可以参考示例输出的格式。

样例输入

1
330000198910120036

样例输出

He/She is from Zhejiang,and his/her birthday is on 10,12,1989 based on the table.

code

#include<iostream>
#include <string>  //substr的头文件
#include <cstring>
#include <algorithm>
#include <vector>
using namespace std;int main()
{vector<pair<int, string>>data={{11,"Beijing"},{12,"Tianjin"},{13,"Hebei"},{14,"Shanxi"},{15,"Menggu"},{21,"Liaoning"}, {22,"Jilin"}, \{23,"Heilongjiang"},{31,"Shanghai"},{32,"Jiangsu"},{33,"Zhejiang"},{34,"Anhui"},{35,"Fujian"},{36,"Jiangxi"},{37,"Shandong"},\{41,"Henan"},{42,"Hubei"},{43,"Hunan"},{44,"Guangdong"},{45,"Guangxi"},{46,"Hainan"},{50,"Chongqing"}, {51,"Sichuan"},{52,"Guizhou"},\{53,"Yunnan"},{54,"Tibet"},{61,"Shanxi"},{62,"Gansu"},{63,"Qinghai"}, {64,"Ningxia"}, {65,"Xinjiang"}, {71,"Taiwan"},{81,"Hong Kong"},\{82,"Macao"}};    int n;cin>>n;for(int i=0;i<n;i++){string id;cin>>id;string  region1;int region=(id[0]-'0')*10+(id[1]-'0');for(const auto&p:data){   //const auto&p : data 这个语句的作用是遍历容器 data 中的每个元素if(p.first==region){  //for语句的作用是找到身份证前2位数字对应的地区region1=p.second;break;}}string year=id.substr(6,4);string month=id.substr(10,2);string day=id.substr(12,2);cout<<"He/She is from "<<region1<<",and his/her birthday is on "<<month<<","<<day<<","<<year<< " based on the table."<<endl;}return 0;
}

这篇关于CZ‘s ID Card的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/434026

相关文章

4-4.Andorid Camera 之简化编码模板(获取摄像头 ID、选择最优预览尺寸)

一、Camera 简化思路 在 Camera 的开发中,其实我们通常只关注打开相机、图像预览和关闭相机,其他的步骤我们不应该花费太多的精力 为此,应该提供一个工具类,它有处理相机的一些基本工具方法,包括获取摄像头 ID、选择最优预览尺寸以及打印相机参数信息 二、Camera 工具类 CameraIdResult.java public class CameraIdResult {

集群环境下为雪花算法生成全局唯一机器ID策略

雪花算法是生成数据id非常好的一种方式,机器id是雪花算法不可分割的一部分。但是对于集群应用,让不同的机器自动产生不同的机器id传统做法就是针对每一个机器进行单独配置,但这样做不利于集群水平扩展,且操作过程非常复杂,所以每一个机器在集群环境下是一个头疼的问题。现在借助spring+redis,给出一种策略,支持随意水平扩展,肥肠好用。 大致策略分为4步: 1.对机器ip进行hash,对某一个(大于

在实现回显功能模块的时候,把ID设置成全局变量了

在hsapprove.jsp中: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><script type="text/javascript">function edittodayhs(hsid){//alert(hsid);//

PL/SQL工具创建Oracle数据库表,实现id字段的自动递增

通过PL/SQL工具,创建Oracle数据库表,如何实现字段ID自动递增; Oracle的自增需要依靠序列和触发器共同实现 比如:先创建一个表 create table test (id int primary key, name varchar2(10)); 创建一个序列 create sequence test_seq increment by 1 start with 1  min

分布式项目中使用雪花算法提前获取对象主键ID

hello,大家好,我是灰小猿! 在做分布式项目开发进行数据表结构设计时,有时候为了提高查询性能,在进行数据库表设计时,会使用自增ID来代替UUID作为数据的主键ID,但是这样就会有一个问题,数据的自增ID应该如何获取到下一个ID并且插入到库中呢? 如果你使用的是mybatisPlus,可以使用自带的自增注解加在id字段上即可,这样在数据入库时就可以自动给数据赋值自增的主键ID, 但是对于不

《长得太长也是错?——后端 Long 型 ID 精度丢失的“奇妙”修复之旅》

引言 在前后端分离的时代,我们的生活充满了无数的机遇与挑战——包括那些突然冒出来的让人抓狂的 Bug。今天我们要聊的,就是一个让无数开发者哭笑不得的经典问题:后端 Long 类型 ID 过长导致前端精度丢失。说到这个问题,那可真是“万恶之源”啊,谁让 JavaScript 只能安全地处理 Number.MAX_SAFE_INTEGER(也就是 9007199254740991)以内的数值呢?

练习实践-git工具-id:1-git 工具的基础命令

参考来源: csdn技能树-git https://fishc.com.cn/forum-334-1.html fishc论坛的扩展阅读 git能做什么? 进行版本控制,版本记录、版本回退; 需求场景:一个新的开发项目,随着功能的增加,代码量、相关文件数量也在逐渐增多…… 这样开发就会遇到一个问题:当需要修改一些代码的时候,不得已要删除另外一些代码。第二天脑袋突然被门框给夹了一下,又想恢复回

练习实践-git工具-id:2-git 仓库部分的基础命令

参考来源: csdn技能树-git https://fishc.com.cn/forum-334-1.html fishc论坛扩展阅读-git实用教程 git分支的实现原理理解–三棵树-工作、缓存、仓库 1.创建一个新文件license,修改readme.txt文件内容,之后查看git状态信息 F:\tmp\learning-git>echo "This is a license." >

update 返回更新的行的 id

应用软件开发过程中, 经常碰到 用 SQL 语句 更新表后, 希望 获取 更新的行 的 id ,  可以通过 以下方法 获取   update [user] set userPwd = '123' output inserted.id , inserted.userName where userName like 'mk%' 更新到多行时,这个方法仍然可用

【Linux】多线程:POSIX库、线程管理、线程ID

目录 一、POSIX线程库 二、线程ID 三、动态库加载 四、再谈线程ID 一、POSIX线程库 原生库:指的是操作系统自带的库,如POSIX线程库,在类Unix系统中通常是原生支持的。这些库是操作系统的一部分,提供了系统级的线程管理功能。 【了解】兼容性和标准化 POSIX 标准:POSIX(Portable Operating System Interface)