import java lang reflect Array import java util ArrayList import java

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner;
import java.lang.Math;
class point {
String name;
int index=-2;
point parent;
int distance;
int distance_to;
int cap;
ArrayList<point> list = new ArrayList<point>();
}
public class Factorial {
public static void main(String[] arg) {
Scanner sc = new Scanner(System.in);
int i=0,j=0,distance=0,k=0,len,l=0;
char[]bufff = new char[20];
String buff=new String();
int buf;
ArrayList<String>forms = new ArrayList<String>();
forms.add(i, sc.nextLine());
while(forms.get(i).charAt(forms.get(i).length() - 1) == ';' || forms.get(i).charAt(forms.get(i).length() - 1) == '<') {
while (forms.get(i).charAt(forms.get(i).length() - 1) == '<'){
forms.set(i,forms.get(i)+sc.nextLine());
}
if (forms.get(i).charAt(forms.get(i).length() - 1) == ';'){
i++;
forms.add(i, sc.nextLine());
}
}
len=forms.size();
ArrayList<point>graph=new ArrayList<point>();
ArrayList<String>names=new ArrayList<String>();
ArrayList<Integer>times=new ArrayList<Integer>();
OUTERMOST: for(i=0;i<len;i++){ //проходим по всем формулам
for(j=0;j<forms.get(i).length();j++) {
bufff[k]=forms.get(i).charAt(j);
while(forms.get(i).charAt(j)!=' ' && forms.get(i).charAt(j)!='(' && forms.get(i).charAt(j)!='<' && forms.get(i).charAt(j)!=';'){ //проходим по названию работы
try{
bufff[++k]=forms.get(i).charAt(++j);
}
catch(Exception e){
break OUTERMOST;
}
}
bufff[k]='\0';
if(forms.get(i).charAt(j) == '('){ //если упоминалось впервые-сохраняем работу и считываем время.
for(l=0;l<k;l++)
buff+=bufff[l];
names.add(buff);
k=0;
j++;
buff="";
bufff[k]=forms.get(i).charAt(j);
while(forms.get(i).charAt(j+1)!=')')
bufff[++k]=forms.get(i).charAt(++j);
for(l=0;l<=k;l++)
buff+=bufff[l];
buf=Integer.valueOf(buff);
times.add(buf);
k=0;
buff="";
j++;
}
else{
k=0;
}
}
}
for(i=0;i<names.size();i++){
System.out.println(names.get(i) +" "+times.get(i));
}
}
}