📄 3447069_ac_391ms_2872k.java
字号:
import java.util.*;
public class Main {
private Scanner in;
private HashMap <Integer, IntegerArray> hm = new HashMap <Integer, IntegerArray> ();
private final static int MAX_TIME = 8785;
public static void main(String [] args) {
System.out.println("CALL FORWARDING OUTPUT");
new Main().run();
System.out.println("END OF OUTPUT");
}
class IntegerArray {
int [] array = new int [MAX_TIME];
}
private void run() {
in = new Scanner (System.in);
int cas, now = 1;
int a, b, c, d;
cas = in.nextInt();
while (cas-- > 0) {
System.out.println("SYSTEM " + (now++));
hm.clear();
while (true) {
a = in.nextInt();
if (a == 0) {
break;
}
b = in.nextInt();
c = b + in.nextInt();
d = in.nextInt();
IntegerArray ia = new IntegerArray();
if (hm.containsKey(a)) {
ia = hm.get(a);
hm.remove(a);
}
for (int i = b; i <= c; i++) {
ia.array[i % MAX_TIME] = d;
}
hm.put(a, ia);
}
while (true) {
a = in.nextInt();
if (a == 9000) {
break;
}
b = in.nextInt();
int start = b;
while (true) {
if(!hm.containsKey(b)) {
break;
}
IntegerArray ia = hm.get(b);
c = ia.array[a];
if (c == 0){
break;
} else {
if (c == start) {
b = 9999;
break;
} else {
b = c;
}
}
}
System.out.println("AT " + format(a) + " CALL TO " + format(start) + " RINGS " + format(b));
}
}
in.close();
}
private String format(int num) {
String tmp = Integer.toString(num);
int length = tmp.length();
String ret = "";
for (int i = 0; i < 4 - length; i++) {
ret += "0";
}
return ret + tmp;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -