杭电2093题,Java版

虽然不难但很麻烦。

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner; /**
* @Author Yun
* @Date 2020/9/9 8:56
*
* Accepted!!!!!
*/
class node implements Comparable<node>{
String name;
int num;
int time; public node(String name, int num, int time) {
this.name = name;
this.num = num;
this.time = time;
} @Override
public int compareTo(node o) {
if(this.num<o.num){ //num 降序
return 1;
}else if(this.num>o.num){
return -1;
}else {
if(this.time>o.time){
return 1;
}else if(this.time<o.time){
return -1;
}else {
return this.name.compareTo(o.name)>0?1:-1;
}
}
}
}
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
List<node> list = new ArrayList<>();//记录每个学生的姓名、AC数和time
int n = sc.nextInt();
int m = sc.nextInt(); while (sc.hasNext()){
String name = sc.next(); int time = 0,num = 0;
for (int k = 0; k < n; k++) {
String s = sc.next();
if(s.charAt(0)=='-'|| s.equals("0")){
continue;
}else if(s.contains("(")){
num ++; //AC数加一 //计算用时
int tmp = 0;
int i = 0;
for (i = 0; s.charAt(i)!='(' ; i++) {
tmp = tmp*10+(s.charAt(i)-'0');
}
time += tmp; //计算罚时
tmp = 0;
for (int j = i+1; s.charAt(j)!=')'; j++) {
tmp = tmp*10+(s.charAt(j)-'0');
}
time+=tmp*m;
}else {
int tmp = 0;
for (int i = 0; i<s.length(); i++) {
tmp = tmp*10+(s.charAt(i)-'0');
}
num++;
time+=tmp;
}
} //建node
node nodex = new node(name,num,time);
list.add(nodex);
}
Collections.sort(list); //排序 //按要求输出
for (node nodex:list) {
System.out.printf("%-10s%3d%5d%n",nodex.name,nodex.num,nodex.time);
}
sc.close();
}
}

  

杭电oj2093题,Java版的更多相关文章

  1. 高手看了,感觉惨不忍睹——关于“【ACM】杭电ACM题一直WA求高手看看代码”

    按 被中科大软件学院二年级研究生 HCOONa 骂为“误人子弟”之后(见:<中科大的那位,敢更不要脸点么?> ),继续“误人子弟”. 问题: 题目:(感谢 王爱学志 网友对题目给出的翻译) ...

  2. Help Johnny-(类似杭电acm3568题)

    Help Johnny(类似杭电3568题) Description Poor Johnny is so busy this term. His tutor threw lots of hard pr ...

  3. acm入门 杭电1001题 有关溢出的考虑

    最近在尝试做acm试题,刚刚是1001题就把我困住了,这是题目: Problem Description In this problem, your task is to calculate SUM( ...

  4. 杭电dp题集,附链接还有解题报告!!!!!

    Robberies 点击打开链接 背包;第一次做的时候把概率当做背包(放大100000倍化为整数):在此范围内最多能抢多少钱  最脑残的是把总的概率以为是抢N家银行的概率之和- 把状态转移方程写成了f ...

  5. 杭电ACM题单

    杭电acm题目分类版本1 1002 简单的大数 1003 DP经典问题,最大连续子段和 1004 简单题 1005 找规律(循环点) 1006 感觉有点BT的题,我到现在还没过 1007 经典问题,最 ...

  6. 2019春招面试高频题(Java版),持续更新(答案来自互联网)

    第一模块--并发与多线程 Java多线程方法: 实现Runnable接口, 继承thread类, 使用线程池 操作系统层面的进程与线程(对JAVA多线程和高并发有了解吗?) 计算机资源=存储资源+计算 ...

  7. HDU 1840 Equations (简单数学 + 水题)(Java版)

    Equations 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1840 ——每天在线,欢迎留言谈论. 题目大意: 给你一个一元二次方程组,a(X^2 ...

  8. 杭电HDOJ--ACM1002(JAVA解题,运用BigInteger)(自定义MBigInteger 简单实现大数处理----完善后可以实现百亿计算器)

    转载声明:原文转自http://www.cnblogs.com/xiezie/p/5501901.html     JAVA解题:   import java.util.*; import java. ...

  9. HDU 2086 A1 = ? (找规律推导公式 + 水题)(Java版)

    Equations 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2086 ——每天在线,欢迎留言谈论. 题目大意: 有如下方程:Ai = (Ai-1 ...

随机推荐

  1. NIO(三):Selector选择器

    一.堵塞式与非堵塞式 在传统IO中,将数据由当前线程从客户端传入服务端,由服务端的内核进行判断传过来的数据是否合法,内核中是否存在数据. 如果不存在数据 ,并且数据并不合法,当前线程将会堵塞等待.当前 ...

  2. MySQL连接查询、子查询与联合查询

    一 连接查询 1.交叉连接: 语法: from  表1  [cross]  join  表2  ; 例如: 表一: 表2: 交叉: 交叉查询并没有意义. 2.内连接: 语法: from  表1  [i ...

  3. ZoneJS 的原理与应用

    目录 序言 Zone 是什么 ZoneJS 的原理 ZoneJS 的应用场景 参考 1. 序言 ZoneJS 是 Angular 团队受到 Dart 的 Zone 的启发,为 Angular v2 及 ...

  4. CPU:别再拿我当搬砖工了!

    数据搬运工 Hi,我是CPU一号车间的阿Q,有段日子没见面了. 还记得上回说到咱们厂里用上了DMA技术(太慢不能忍!CPU又拿硬盘和网卡开刀了!)之后,我们总算解放了,再也不用奔波于网卡.硬盘与内存之 ...

  5. day6 函数

    1.关键字参数     给实参对应的形参   调用函数时 设置关键字参数,形参=实参,把实参固定给那个形参 2.元组的可变(不定长参数)的使用      可变参数可以接收任意数量的普通的形参,并且组包 ...

  6. 提升团队幸福感之:集成 GitLab && JIRA 实现自动化工作流

    佛罗伦萨 - 圣母百花圣殿(图) 前言 GitLab 和 Jira 是平时开发过程中使用非常高频的代码管理系统(开发人员)和项目管理系统(项目管理),通过两套系统的协作完成平常大多数的功能开发,但是两 ...

  7. ms14-064漏洞复现

    本博客最先发布于我的个人博客,如果方便,烦请移步恰醋的小屋查看,谢谢您! 这是我在实验室学习渗透测试的第五个漏洞复现,一个多小时便完成了.学长给的要求只需完成查看靶机信息.在指定位置创建文件夹两项操作 ...

  8. 边缘计算、区块链、5G,哪个能走的更远

    频繁出现的新词汇5G.区块链.边缘计算,这些都代表了什么,又能给我们的生活带来什么巨大的改变么?抉择之时已至,能够走向未来的真的只有一个吗? "没有什么能够阻挡,你对自由的向往....&qu ...

  9. Nordic 52840-Timer定时器学习问题(一)

    今天在ble_app_blinky例程中移植定时器驱动,在编译过程中报出了两个错误,在此记录一下. 1. 在nRF_Dreivers中添加nrfx_timer.c文件 选中“nRF_Dreivers  ...

  10. 数据结构-二叉树(6)哈夫曼树(Huffman树)/最优二叉树

    树的路径长度是从树根到每一个结点的路径长度(经过的边数)之和. n个结点的一般二叉树,为完全二叉树时取最小路径长度PL=0+1+1+2+2+2+2+… 带权路径长度=根结点到任意结点的路径长度*该结点 ...