import java.io.*;
import java.util.*;
public class Main {
static PrintWriter out = new PrintWriter(new BufferedOutputStream(System.out));
static BufferedReader ins = new BufferedReader(new InputStreamReader(System.in));
static StreamTokenizer in = new StreamTokenizer(ins);
public static void main(String[] args) throws IOException {
in.ordinaryChars('0', '9');
in.wordChars('0', '9');
in.nextToken();
int N=Integer.parseInt(in.sval);
in.nextToken();
int M=Integer.parseInt(in.sval);
char[][] ids=new char[N][];
int[] s=new int[N];
for (int i=0;i<N;i++){
in.nextToken();
ids[i]=in.sval.toCharArray();
in.nextToken();
s[i]=Integer.parseInt(in.sval);
}
List<Student> list=new ArrayList<>();
for (int i=0;i<M;i++){
list.clear();
boolean f=true;
in.nextToken();
int K=Integer.parseInt(in.sval);
in.nextToken();
String cs=in.sval;
char[] c=cs.toCharArray();
out.printf("Case %d: %d %s\n",(i+1),K,cs);
switch (K){
case 1:
for (int j=0;j<N;j++){
if(ids[j][0]==c[0]){
list.add(new Student(ids[j],s[j]));
f=false;
}
}
if(!f)Collections.sort(list,(o1, o2) -> o1.s!=o2.s?o2.s-o1.s:(String.valueOf(o1.id).compareTo(String.valueOf(o2.id))));
if(!f)list.forEach(o-> out.println(o));
break;
case 2:
int sn=0,ss=0;
for(int j=0;j<N;j++){
if(cmp(ids[j],c,1,3)){
sn++;
ss+=s[j];
f=false;
}
}
if(!f)out.println(sn+" "+ss);
break;
case 3:
for (int j=0;j<N;j++){
if(cmp(ids[j],c,4,6)){
f=false;
char[] cc=new char[3];
System.arraycopy(ids[j],1,cc,0,3);
int index=-1;
for (int z=0;z<list.size();z++){
if(cmp(list.get(z).id,cc,0,3))
index=z;
}
if(index==-1){
list.add(new Student(cc,1));
}else{
list.get(index).s++;
}
}
}
if(!f)Collections.sort(list,(o1, o2) -> o1.s!=o2.s?o2.s-o1.s:(String.valueOf(o1.id).compareTo(String.valueOf(o2.id))));
if(!f)list.forEach(o->out.println(o));
break;
}
if (f) out.println("NA");
}
out.close();
}
public static boolean cmp(char[] a,char[] b,int start,int end){
for (int i=start,len=start+end,j=0;i<len;i++,j++)
if(a[i]!=b[j]) return false;
return true;
}
}
class Student{
char[] id;
int s;
public Student(char[] id,int s){
this.id=id;
this.s=s;
}
@Override
public String toString() {
final StringBuilder sb = new StringBuilder();
sb.append(id).append(" ").append(s);
return sb.toString();
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
PAT乙级答案(JAVA)
共135个文件
txt:135个
需积分: 0 4 下载量 188 浏览量
2023-05-17
11:08:10
上传
评论
收藏 81KB ZIP 举报
温馨提示
自己写的,极少数超时。感兴趣可以下载下来参考参考
资源推荐
资源详情
资源评论
收起资源包目录
PAT乙级答案(JAVA) (135个子文件)
1095 解码PAT准考证(java超时) .txt 4KB
1035 插入与归并.txt 3KB
1015 德才论 (Java超时).txt 3KB
1073 多选题常见计分法.txt 3KB
1075 链表元素分类(java超时).txt 3KB
1058 选择题.txt 3KB
1105 链表合并(java超时).txt 3KB
1085 PAT单位排行(java超时).txt 3KB
1080 MOOC期终成绩(java超时).txt 2KB
1025 反转链表(java超时).txt 2KB
1068 万绿丛中一点红.txt 2KB
1104 天长地久(java超时).txt 2KB
1034 有理数四则运算(java超时).txt 2KB
1018 锤子剪刀布.txt 2KB
1044 火星数字.txt 2KB
1115 裁判机.txt 2KB
1050 螺旋矩阵.txt 2KB
1055 集体照.txt 2KB
1079 延迟的回文数.txt 2KB
1090 危险品装箱.txt 2KB
1110 区块反转(java超时).txt 2KB
1078 字符串压缩与解压.txt 2KB
1052 卖个萌(java未通过).txt 2KB
1059 C语言竞赛(java超时).txt 2KB
1003 我要通过!.txt 2KB
1020 月饼.txt 2KB
1100 校庆.txt 2KB
1095 解码PAT准考证(c++).txt 2KB
1062 最简分数.txt 2KB
1104 天长地久(c++).txt 1KB
1113 钱串子的加法.txt 1KB
1045 快速排序.txt 1KB
1081 检查密码.txt 1KB
1014 福尔摩斯的约会.txt 1KB
1096 大美数.txt 1KB
1085 PAT单位排行(c++).txt 1KB
1065 单身狗(java超时).txt 1KB
1111 对称日.txt 1KB
1028 人口普查(java超时).txt 1KB
1027 打印沙漏.txt 1KB
1054 求平均值.txt 1KB
1074 宇宙无敌加法器.txt 1KB
1024 科学计数法.txt 1KB
1089 狼人杀-简单版.txt 1KB
1108 String复读机.txt 1KB
1043 输出PATest.txt 1KB
1080 MOOC期终成绩(c++).txt 1KB
1071 小赌怡情.txt 1KB
1072 开学寄语.txt 1KB
1067 试密码.txt 1KB
1004 成绩排名.txt 1KB
1109 擅长C.txt 1KB
1097 矩阵行平移.txt 1KB
1005 继续(3n+1)猜想.txt 1KB
1019 数字黑洞.txt 1KB
1015 德才论 (c++).txt 1KB
1103 缘分数.txt 1KB
1059 C语言竞赛(c++).txt 1KB
1088 三人行.txt 1KB
1034 有理数四则运算(c++).txt 1KB
1094 谷歌的招聘.txt 1KB
1048 数字加密.txt 1KB
1012 数字分类.txt 1KB
1025 反转链表(c++).txt 1KB
1102 教超冠军卷.txt 1KB
1053 住房空置率.txt 1KB
1010 一元多项式求导.txt 1KB
1020 月饼(java超时).txt 1KB
1052 卖个萌(c++) .txt 1KB
1112 超标区间.txt 1KB
1099 性感素数.txt 1KB
1002 写出这个数.txt 1KB
1069 微博转发抽奖.txt 1KB
1084 外观数列.txt 1KB
1077 互评成绩计算.txt 1KB
1028 人口普查(c++) .txt 1022B
1075 链表元素分类(c++).txt 1014B
1066 图像过滤(java超时).txt 1000B
1114 全素日.txt 995B
1082 射击比赛.txt 993B
1061 判断题.txt 991B
1032 挖掘机技术哪家强.txt 987B
1031 查验身份证.txt 981B
1036 跟奥巴马一起编程.txt 962B
1091 N-自守数.txt 961B
1041 考试座位号.txt 961B
1092 最好吃的月饼.txt 955B
1008 数组元素循环右移问题.txt 942B
1051 复数乘法.txt 939B
1039 到底买不买.txt 939B
1037 在霍格沃茨找零钱.txt 939B
1064 朋友数.txt 923B
1110 区块反转(c++).txt 888B
1105 链表合并(c++).txt 888B
1030 完美数列(java超时).txt 879B
1060 爱丁顿数.txt 862B
1107 老鼠爱大米.txt 858B
1098 岩洞施工.txt 826B
1065 单身狗(c++).txt 822B
1046 划拳.txt 818B
共 135 条
- 1
- 2
资源评论
我什么也不会呀,怎么办
- 粉丝: 0
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 技术面试最后反问面试官的话 校招面试非技术问题有哪些 非技术问题如何回答.png
- NB-IOT-BC26全网通模块Altium+ CADENCE +PADS三种格式(原理图SCH+PCB封装库)文件.zip
- 基于微信小程序开发的校园失物招领系统源码毕业设计(优质项目源码).zip
- 词向量是一种将自然语言中的单词转换为数值向量的技术,它能够捕捉词义和上下文信息
- nmap与masscan的简单使用
- MyBatis动态SQL.pdf
- 基于stm32单片机protues仿真的温湿度控制系统设计(仿真图、源代码)
- 词向量:自然语言处理的基石
- mybatis动态sql
- 40G微信小程序开发教程(工具插件+视频教程)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功