计挑-21-编程3
某地大数据防疫平台记录了往来的所有防疫相关信息,包括 本地或外地人员、健康码颜色、接种疫苗情况、最近一次核酸结果、最近一次核酸检测时间等。
该地希望依据平台数据组织新一轮的疫苗接种,现有2针免疫的疫苗A和1针免疫的疫苗B。
对于本地人员,完全接种者不接种,部分接种者继续接种疫苗A,未接种者接种疫苗B;
对于外地人员,由于疫苗种类不同,部分接种者和完全接种者不接种,未接种者接种疫苗B。
此外,医务人员已开展入户检测核酸,非绿码人员须有3日(天数<3)内核酸检测阴性证明才可以接种。
请设计程序,判断疫苗A和B各有多少人接种。
输入说明:第一行,人员数量;
第二行开始每行为该人员的各个参数,以空格隔开,包括:
本地或外地人员:本地为’L’,外地为’T’;
健康码颜色:绿色为’G’,黄色为’Y’,红色为’R’;
接种疫苗情况:完全接种为‘C’,部分接种’D’,未接种为’E’;
最近一次核酸检测结果:阴性为’N’,阳性为’P’,未查为’U‘
最近一次核酸检测时间为:整数,取值范围为0-7,0代表当天检测,7代表7天或更长时间之前检测或未查;
输出说明:一行,符合疫苗A和B接种条件的人数,中间以空格隔开。
输入样例:4
L G D U 7
L Y C N 2
T G E N 1
T R E P 4
输出样例:1 1
public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer stringTokenizer = new StringTokenizer(br.readLine()); int n = Integer.parseInt(stringTokenizer.nextToken()); int aCount = 0, bCount = 0; for (int i = 0; i < n; i++) { String str = br.readLine(); // 检查健康码 if (str.charAt(2) == 'G' || (str.charAt(6) == 'N' && Integer.parseInt(str.substring(8, 9)) < 3)) { if (str.charAt(0) == 'L') { // 是本地 if (str.charAt(4) == 'D') aCount++; else if(str.charAt(4)=='E') bCount++; } else if(str.charAt(4)=='E') bCount++; } } System.out.println(aCount+" "+bCount); }
本文作者:YaosGHC
本文链接:https://www.cnblogs.com/yaocy/p/16917252.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步