48 lines
585 B
Text
48 lines
585 B
Text
|
|
class Obj{}
|
|
|
|
var p = Obj();
|
|
p.length = 0;
|
|
p.next = nil;
|
|
|
|
fun append(p, item){
|
|
p.length = p.length + 1;
|
|
var n = Obj();
|
|
n.next = p.next;
|
|
p.next = n;
|
|
}
|
|
fun walk(p){
|
|
class Res{}
|
|
var n = p;
|
|
var d = 0;
|
|
while(n.next){
|
|
n = n.next;
|
|
d = d + 1;
|
|
}
|
|
var r = Res();
|
|
r.item = n;
|
|
r.depth = d;
|
|
return r;
|
|
}
|
|
fun max(a, b){
|
|
if(a > b)
|
|
return a;
|
|
return b;
|
|
}
|
|
|
|
var sum = 0;
|
|
var maxLength = 0;
|
|
|
|
for(var i = 0; i < 10; i = i + 1){
|
|
append(p, Obj());
|
|
sum = sum + p.length;
|
|
var res = walk(p);
|
|
sum = sum - res.depth;
|
|
maxLength = max(maxLength, p.length);
|
|
}
|
|
|
|
|
|
print sum;
|
|
print maxLength;
|
|
|
|
|