import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
char[] dz = { '1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2' };
int[] qz = { 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 };
int n = sc.nextInt();
sc.nextLine();
char[][] ch = new char[n][19];
for (int i = 0; i < n; i++) {
String str = sc.nextLine();
ch[i] = str.toCharArray();
}
// float sum=0;
int error = 0;
for (int i = 0; i < n; i++) {
try {
int sum = 0;
for (int j = 0; j < 17; j++) {
sum += (ch[i][j] - '0') * qz[j];
}
int z = sum % 11;
if ((ch[i][17]) - '0' != (dz[z]) - '0') {
error++;
System.out.println(ch[i]);
}
} catch (NumberFormatException e) {
// TODO Auto-generated catch block
e.printStackTrace();
error++;
System.out.println(ch[i]);
}
}
if (error == 0) {
System.out.println("All passed");
}
}
}
相关推荐
L1-016 查验身份证 (15 分) - PAT团体程序设计天梯赛
题滴链接https://pintia.cn/problem-sets/994805046380707840/problems/994805122985476096 L1-016查验身份证(15分) 一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10...
L1-016 查验身份证
查验身份,emmmm…,应该注意,需要判断的是其实是三个: (1)前十七位数字均为数字。 (2)最后一位对应准确。 (3)输入的身份证号是18位。 前两个判断点,分别用flag1和flag2用来记录真假,第三个判断点从逻辑上来说也是很必要的!,但是多次提交发现PTA系统对于这道题的测试点里面并没有第三个测试点,仅用前两个判断点就能AC,充分说明了这道题的测试样例的不严谨性,但还是建议写完整。下...
Vivado 2018.3 SDK烧写bin文件避坑指南:如何解决QSPI模式下的常见错误
本文深入解析了在Vivado 2018.3 SDK中为Zynq FPGA烧写QSPI Flash时遇到的常见问题,特别是启动模式为QSPI时出现的警告与失败。文章从Zynq启动机制入手,提供了修改FSBL代码以强制使用JTAG模式、调整硬件配置等核心解决方案,并分享了实战案例与最佳实践,帮助开发者高效避坑,确保bin文件烧写成功。
L1-016 查验身份证 (15分)
题目 一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将计算的和对11取模得到值Z;最后按照以下关系对应Z值与校验码M的值: Z:0 1 2 3 4 5 6 7 8 9 10 M:1 0 X 9 8 7 6 5 4 3 2 现在给定一些身份证号码,请你验证校验码的有效性,并输出有问题的号码。 输入格式: 输入第一行给出正整数N(≤100)是输入
论文理解【LLM-Clarification】—— 【QDrawer】Asking the Right Question at the Right Time: Human and Model Unce
本文基于 CoDraw 任务对 LLM 澄清提问的触发方式进行探索,发现模型内部不确定性与人类澄清决策相关性弱,使用不确定性阈值触发澄清提问相比模仿人类提问时机,性能和计算效率都更好
虚拟机Ubuntu连接USRP
笔记本通过网线连接USRP。
L1-016. 查验身份证
点击打开链接 一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将计算的和对11取模得到值Z;最后按照以下关系对应Z值与校验码M的值: Z:0 1 2 3 4 5 6 7 8 9 10 M:1 0 X 9 8 7 6 5 4 3 ...
基于OSEK_TP.dll封装通用,多ECU自由切换的诊断函数库
本文介绍了基于CANoe内置OSEK_TP.dll库实现通用诊断通讯的方法。通过封装CAN_TP.cin顶层脚本,实现了ECU连接管理、数据收发和多ECU切换功能。系统采用字典结构存储ECU参数,支持从配置文件读取诊断ID等配置信息,通过TpCreateConnection建立TP层连接。文章详细说明了诊断请求发送函数Uds_DiagSendRequest的实现逻辑,以及如何利用回调函数处理收发事件。该方法无需依赖诊断数据库,通过底层封装实现了灵活高效的诊断通讯方案,适用于车载诊断领域的测试需求。
L1-016 查验身份证(Python3)
学了3天,还不熟悉,python太灵活了还不太适应。使用异常处理感觉有点怪,但也通过了所有测试点。
OpenMM | PDBFixer 用于蛋白质预处理
PDBFixer 用于蛋白质预处理
基于学术研究于NASA官网GPM卫星数据下载详细教程
基于学术研究于NASA官网GPM卫星数据下载详细教程
PAT-L1-016 查验身份证
这道题目没什么技巧,主要考虑以下几点: 1.对于前17位中含有非数字字符的,则是有问题的号码。这种有问题的号码不能再计算加权和,否则会出现校验通过的情况 2.该题目的输出不区分重复性,也就是说对于多个有问题的相同的输入,需要对应多个相同的输出。这点最开始的时候我想太多,还排除掉了相同的输出,结果有个案例怎么也通过不了。删掉这段逻辑就好了 L1-016 查验身份证 (15 分) ...
WPS文档中心和文档中台 operate 未授权访问漏洞(CVE-2025-0717)
WPS文档中心和文档中台的/open/v6/api/etcd/operate?key=/config/storage&method=get接口存在未授权访问漏洞,攻击者可通过该漏洞获取AK/SK密钥等信息,这些密钥通常用于系统内部认证和权限控制,泄露后可能导致攻击者进一步修改K8s配置、部署恶意容器或执行远程命令,最终实现对系统的完全控制。
PAT L1-016. 查验身份证
PAT L1-016. 查验身份证
AI 视觉宠物喂食器:智能识别 + 精准投喂,打造宠物喂养新体验
AI 视觉宠物喂食器将边缘 AI 计算与传统硬件结合,既解决了传统喂食器的核心痛点,又兼顾了 DIY 的易用性和扩展性。无论是宠物主人 DIY 使用,还是小型创客团队产品化,该方案都具备较高的实用价值和落地性,为宠物智能化喂养提供了轻量化的实现路径。
RU DOS版、EFI版32bit/64bit BIOS常用工具
DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。
PAT L1 - 016 查验身份证
一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将计算的和对11取模得到值Z;最后按照以下关系对应Z值与校验码M的值: Z:0 1 2 3 4 5 6 7 8 9 10 M:1 0 X 9 8 7 6 5 4 3 2
蓝牙模块HM-10手册
蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。
PAT-L1-016. 查验身份证
PAT-L1-016
精雕软件(JDpaint) 5.5 绿色版
精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版
IEM模型,地表粗糙度模拟
利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟
L1-016. 查验身份证(Java) PAT团体程序设计天梯赛-练习集
一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将计算的和对11取模得到值Z;最后按照以下关系对应Z值与校验码M的值: Z:0 1 2 3 4 5 6 7 8 9 10 M:1 0 X 9 8 7 6 5 4 3 2 现在...
PAT1031查验身份证(15)
异常简单,不过很有用一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将计算的和对11取模得到值Z;最后按照以下关系对应Z值与校验码M的值:Z:0 1 2 3 4 5 6 7 8 9 10 M:1 0 X 9 8 7 6 5 4 3
仓颉PAT程序设计 L1-016 查验身份证(cangjie)
【代码】仓颉PAT程序设计 L1-016 查验身份证(cangjie)
天梯赛15分题
【题解代码】天梯赛15分。
PAT-团体程序设计天梯赛-L1-016. 查验身份证
题目链接思路:设置一个二维字符数组用储存N个身份证号码,设置一个标识用来判断N个身份证号码中是否全部正确,然后逐个对每个身份证号码进行判断。(1)判断前17位是否全部是数字,不是直接输出,跳到下一个。(1)满足要求:(2)先加权求和,结果再对11求余,然后用switch语句判断最后一个数值是否满足要求;满足跳到下一个,否则输出。(3)若全部判断完,若全部正确,输出All passed。注意点:1.
嵌入式C++实战:快递柜系统设计与实现
嵌入式C++是面向资源受限、实时性与高可靠性要求场景的核心开发技术,其本质在于手动内存管理、零开销抽象与确定性执行。区别于通用C++教学,工业级嵌入式C++需裁剪异常、RTTI、动态内存等非确定性特性,并深度结合硬件抽象、状态机建模与位操作优化。该技术广泛应用于智能硬件、IoT终端与工业控制器等领域,支撑如快递柜、充电桩、售货机等设备的长期稳定运行。本文以真实快递柜固件开发为背景,详解HAL分层架构、HSM状态机、BSP轻量协议及断电事务恢复等关键实践,覆盖从芯片寄存器操作到业务逻辑落地的全链路工程方法。
2018/12/05 PAT刷题 L1-016 查验身份证 Java
一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将计算的和对11取模得到值Z;最后按照以下关系对应Z值与校验码M的值: Z:0 1 2 3 4 5 6 7 8 9 10 M:1 0 X 9 8 7 6 5 4 3 2 ...
714



被折叠的 条评论
为什么被折叠?



