杭电oj2093题,Java版
杭电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版的更多相关文章
- 高手看了,感觉惨不忍睹——关于“【ACM】杭电ACM题一直WA求高手看看代码”
按 被中科大软件学院二年级研究生 HCOONa 骂为“误人子弟”之后(见:<中科大的那位,敢更不要脸点么?> ),继续“误人子弟”. 问题: 题目:(感谢 王爱学志 网友对题目给出的翻译) ...
- Help Johnny-(类似杭电acm3568题)
Help Johnny(类似杭电3568题) Description Poor Johnny is so busy this term. His tutor threw lots of hard pr ...
- acm入门 杭电1001题 有关溢出的考虑
最近在尝试做acm试题,刚刚是1001题就把我困住了,这是题目: Problem Description In this problem, your task is to calculate SUM( ...
- 杭电dp题集,附链接还有解题报告!!!!!
Robberies 点击打开链接 背包;第一次做的时候把概率当做背包(放大100000倍化为整数):在此范围内最多能抢多少钱 最脑残的是把总的概率以为是抢N家银行的概率之和- 把状态转移方程写成了f ...
- 杭电ACM题单
杭电acm题目分类版本1 1002 简单的大数 1003 DP经典问题,最大连续子段和 1004 简单题 1005 找规律(循环点) 1006 感觉有点BT的题,我到现在还没过 1007 经典问题,最 ...
- 2019春招面试高频题(Java版),持续更新(答案来自互联网)
第一模块--并发与多线程 Java多线程方法: 实现Runnable接口, 继承thread类, 使用线程池 操作系统层面的进程与线程(对JAVA多线程和高并发有了解吗?) 计算机资源=存储资源+计算 ...
- HDU 1840 Equations (简单数学 + 水题)(Java版)
Equations 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1840 ——每天在线,欢迎留言谈论. 题目大意: 给你一个一元二次方程组,a(X^2 ...
- 杭电HDOJ--ACM1002(JAVA解题,运用BigInteger)(自定义MBigInteger 简单实现大数处理----完善后可以实现百亿计算器)
转载声明:原文转自http://www.cnblogs.com/xiezie/p/5501901.html JAVA解题: import java.util.*; import java. ...
- HDU 2086 A1 = ? (找规律推导公式 + 水题)(Java版)
Equations 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2086 ——每天在线,欢迎留言谈论. 题目大意: 有如下方程:Ai = (Ai-1 ...
随机推荐
- NIO(三):Selector选择器
一.堵塞式与非堵塞式 在传统IO中,将数据由当前线程从客户端传入服务端,由服务端的内核进行判断传过来的数据是否合法,内核中是否存在数据. 如果不存在数据 ,并且数据并不合法,当前线程将会堵塞等待.当前 ...
- MySQL连接查询、子查询与联合查询
一 连接查询 1.交叉连接: 语法: from 表1 [cross] join 表2 ; 例如: 表一: 表2: 交叉: 交叉查询并没有意义. 2.内连接: 语法: from 表1 [i ...
- ZoneJS 的原理与应用
目录 序言 Zone 是什么 ZoneJS 的原理 ZoneJS 的应用场景 参考 1. 序言 ZoneJS 是 Angular 团队受到 Dart 的 Zone 的启发,为 Angular v2 及 ...
- CPU:别再拿我当搬砖工了!
数据搬运工 Hi,我是CPU一号车间的阿Q,有段日子没见面了. 还记得上回说到咱们厂里用上了DMA技术(太慢不能忍!CPU又拿硬盘和网卡开刀了!)之后,我们总算解放了,再也不用奔波于网卡.硬盘与内存之 ...
- day6 函数
1.关键字参数 给实参对应的形参 调用函数时 设置关键字参数,形参=实参,把实参固定给那个形参 2.元组的可变(不定长参数)的使用 可变参数可以接收任意数量的普通的形参,并且组包 ...
- 提升团队幸福感之:集成 GitLab && JIRA 实现自动化工作流
佛罗伦萨 - 圣母百花圣殿(图) 前言 GitLab 和 Jira 是平时开发过程中使用非常高频的代码管理系统(开发人员)和项目管理系统(项目管理),通过两套系统的协作完成平常大多数的功能开发,但是两 ...
- ms14-064漏洞复现
本博客最先发布于我的个人博客,如果方便,烦请移步恰醋的小屋查看,谢谢您! 这是我在实验室学习渗透测试的第五个漏洞复现,一个多小时便完成了.学长给的要求只需完成查看靶机信息.在指定位置创建文件夹两项操作 ...
- 边缘计算、区块链、5G,哪个能走的更远
频繁出现的新词汇5G.区块链.边缘计算,这些都代表了什么,又能给我们的生活带来什么巨大的改变么?抉择之时已至,能够走向未来的真的只有一个吗? "没有什么能够阻挡,你对自由的向往....&qu ...
- Nordic 52840-Timer定时器学习问题(一)
今天在ble_app_blinky例程中移植定时器驱动,在编译过程中报出了两个错误,在此记录一下. 1. 在nRF_Dreivers中添加nrfx_timer.c文件 选中“nRF_Dreivers ...
- 数据结构-二叉树(6)哈夫曼树(Huffman树)/最优二叉树
树的路径长度是从树根到每一个结点的路径长度(经过的边数)之和. n个结点的一般二叉树,为完全二叉树时取最小路径长度PL=0+1+1+2+2+2+2+… 带权路径长度=根结点到任意结点的路径长度*该结点 ...