关注
public class Main1 {
static class Pig {
public int id;
public int number;
public int age;
public Pig(int id, int number, int age) {
this.id = id;
this.number = number;
this.age = age;
}
@Override
public String toString() {
return String.valueOf(age);
}
}
private static String calculate(int m, int k) {
PriorityQueue<Pig> minHeap = new PriorityQueue<>(
Comparator.comparingInt(o ->
Integer.valueOf(new StringBuilder(String.valueOf(o.number)).reverse().toString())));
LinkedList<Pig> list = new LinkedList<>();
list.add(new Pig(1, 2, 1));
list.add(new Pig(2, 3, 3));
LinkedList<Integer> number = new LinkedList<>();
number.add(2);
number.add(3);
for (Pig pig : list) {
minHeap.offer(pig);
if (minHeap.size() > k) {
minHeap.poll();
}
}
int year = 2020;
int id = 2;
while (id < m) {
LinkedList<Pig> buffer = new LinkedList<>();
for (Pig pig : list) {
if (pig.age < 2) {
pig.age++;
} else {
id++;
int thisNumber;
if (number.size() < 3) {
thisNumber = 4;
number.add(thisNumber);
} else {
thisNumber = number.get(0) + number.get(1);
number.add(thisNumber);
number.remove(0);
}
Pig newPig = new Pig(id, thisNumber, 1);
buffer.add(newPig);
minHeap.offer(newPig);
if (minHeap.size() > k) {
minHeap.poll();
}
if (id == m) {
break;
}
}
}
list.addAll(buffer);
buffer.clear();
System.out.println("Year: " + year + "\t" + list);
if (id >= m) {
break;
}
year++;
}
return number.get(number.size() - 1) + "," + year + "," + minHeap.poll().id;
}
public static void main(String[] args) {
String tmp = calculate(20, 3);
System.out.println(tmp);
}
这是我刚调的,还请大佬指正!当时的测试用例是过了的。阿里我佛系了,这笔试血炸……
查看原帖
点赞 1
相关推荐
07-21 17:02
门头沟学院 嵌入式软件开发 点赞 评论 收藏
分享
要发财的coder很...:快手内推是诈骗,骗钱你改简历呢

点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 哪些公司开提前批了? #
12547次浏览 165人参与
# 实习如何「偷」产出? #
34765次浏览 752人参与
# 校招阶段,学历VS技术哪个更重要? #
12241次浏览 153人参与
# 除了主业以外,你还有哪些其他收入? #
7943次浏览 147人参与
# 不卡学历的大厂有哪些? #
19512次浏览 150人参与
# 风评不好的公司,你会去吗? #
47569次浏览 352人参与
# 实习打杂,要跑路吗 #
14403次浏览 186人参与
# 职场新人体验 #
16589次浏览 165人参与
# 校园里的破防时刻 #
8022次浏览 93人参与
# 腾讯音乐求职进展汇总 #
97318次浏览 566人参与
# 社恐入职新公司如何融入团队 #
11145次浏览 62人参与
# 实习时,大家都怎么称呼自己的mentor? #
43263次浏览 273人参与
# 面试中,你被问过哪些奇葩问题? #
70267次浏览 802人参与
# 摸鱼被leader发现了怎么办 #
60829次浏览 371人参与
# 非技术投递记录 #
611181次浏览 6413人参与
# Offer比较,你最看重什么? #
190669次浏览 1297人参与
# 双非能在秋招上岸吗? #
226386次浏览 1214人参与
# 考研可以缓解求职焦虑吗 #
53627次浏览 474人参与
# 没有合适的工作,你会先找个干着,还是考公考研 #
121481次浏览 1147人参与
# 金融财经春招备战日记 #
22874次浏览 135人参与