关注
发一下前三题100%的代码吧……最后一题快写出来了……但是估计还要半个小时才能调试出来 1. 起床 package a;
import java.util.Scanner;
public class Main {
static class Clock implements Comparable<Clock>{
int hour, minute;
public Clock(int hour, int minute) {
this.hour = hour;
this.minute = minute;
}
@Override
public int compareTo(Clock o) {
if (this.hour != o.hour) {
return this.hour - o.hour;
}
return this.minute - o.minute;
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
Clock[] clocks = new Clock[n];
for (int i = 0; i < n; i++) {
int hour = scanner.nextInt();
int minute = scanner.nextInt();
clocks[i] = new Clock(hour, minute);
}
int route = scanner.nextInt();
Clock lesson = new Clock(scanner.nextInt(), scanner.nextInt());
while (lesson.minute < route) {
lesson.hour -= 1;
route -= 60;
}
lesson.minute -= route;
Clock latest = clocks[0];
for (int i = 0; i < clocks.length; i++) {
if (clocks[i].compareTo(lesson) <= 0 && clocks[i].compareTo(latest) >= 0) {
latest = clocks[i];
}
}
System.out.println(latest.hour + " " + latest.minute);
}
}
2. 解密 package b;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int k = scanner.nextInt();
String secret = scanner.next();
char[] result = new char[n];
result[0] = secret.charAt(0);
for (int i = 1; i < k; i++) {
result[i] = xor(secret.charAt(i), secret.charAt(i - 1));
}
for (int i = k; i < n; i++) {
result[i] = xor(xor(secret.charAt(i), secret.charAt(i - 1)), result[i - k]);
}
System.out.println(new String(result));
}
private static char xor(char a, char b) {
return a == b ? '0' : '1';
}
}
3. 分钱 package c;
import java.util.*;
public class Main {
public static final int MIN_MONEY = 100;
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
// 年份对应的座位号
TreeMap<Integer, List<Integer>> map = new TreeMap<>();
int[] people = new int[n];
for (int i = 0; i < n; i++) {
people[i] = scanner.nextInt();
if (!map.containsKey(people[i])) {
map.put(people[i], new ArrayList<>());
}
map.get(people[i]).add(i);
}
int[] money = new int[n];
int[] tmp = new int[n];
while (!map.isEmpty()) {
int lowestKey = map.firstKey();
for (int i : map.get(lowestKey)) {
if (i == 0) {
tmp[i] = money[i + 1] + 100;
} else if (i == n - 1) {
tmp[i] = money[i - 1] + 100;
} else {
tmp[i] = Math.max(money[i - 1], money[i + 1]) + 100;
}
}
for (int i : map.get(lowestKey)) {
money[i] = tmp[i];
}
map.remove(lowestKey);
}
int sum = 0;
for (int i : money) {
sum += i;
}
System.out.println(sum);
}
}
前三题都还可以……一个小时就做完了,但是最后一题想贪全最后没有做完,还是太菜了
查看原帖
点赞 1
相关推荐
点赞 评论 收藏
分享
04-03 22:39
重庆大学 Java 点赞 评论 收藏
分享
牛客热帖
更多
- 1... Java后端开发需要理解和背的八股文整理2.5W
- 2... “我想了想,你去哪我都想和你在一起”2.3W
- 3... 💌【520限时活动公告】牛爱网高甜营业!你的恋爱通关秘籍已送达~1.9W
- 4... 记录一下这两个月面试以来遇到的手撕题1.4W
- 5... 5月16日早上莫名被美团捞起来了1.0W
- 6... 离开这座让我伤心的城市了💔,希望以后一切顺利吧!#补录# #裁应届生# #捡漏# #minimax#6849
- 7... 想要上岸大厂先学会拥抱AI6120
- 8... 【双非本】上岸字节后端 | 接单 | 奖学金 | 做自媒体,分享下主包的大学四年 ✨🎓4997
- 9... 差不多还有一周就要去团子实习了,部门自我感觉不是很核心,但是现在比较焦虑。清楚自己是一个八股选手,项目经验几乎是0,比较依赖ai,外卖点评什么的都没敲过,自己的学习能力应该算中等?很害怕进去之后比较push,然后发现我是个水货把我提前开除了,想问问这段时间可以做些什么准备呢?速通一下外卖项目跟着看一遍视频?(有点担心跟着敲一遍时间不够)?4547
- 10... 双非大一 微派网络后端一面4383
正在热议
更多
# 牛油的搬砖plog #
31407次浏览 155人参与
# 你们公司哪个部门最累? #
8246次浏览 43人参与
# 一人一个landing小技巧 #
26180次浏览 490人参与
# 这些公司卡简历很严格 #
27784次浏览 134人参与
# 大学最后一个寒假,我想…… #
31986次浏览 328人参与
# 国企还是互联网,你怎么选? #
134047次浏览 987人参与
# 正在实习的你,有转正机会吗? #
372263次浏览 2875人参与
# bilibili求职进展汇总 #
58967次浏览 580人参与
# 我在牛爱网找对象 #
181196次浏览 1385人参与
# 520告白墙 #
25866次浏览 402人参与
# 写简历别走弯路 #
724357次浏览 7893人参与
# 经纬恒润求职进展汇总 #
116894次浏览 1025人参与
# 找工作的破防时刻 #
29667次浏览 437人参与
# 面试被问第一学历差时该怎么回答 #
123734次浏览 772人参与
# 为什么那么多公司毁约 #
164131次浏览 1235人参与
# 查收我的offer竞争力报告 #
177461次浏览 1088人参与
# 你觉得技术面多长时间合理? #
92925次浏览 668人参与
# 运营每日一题 #
68093次浏览 659人参与
# 腾讯音乐求职进展汇总 #
86696次浏览 487人参与
# 面试被问“你的缺点是什么?”怎么答 #
96863次浏览 1115人参与