森林树木的统计 NDK1600

    技术2022-05-19  26

    program NDK1600; type tree=^node; node=record data,time:longint; lc,rc:tree; end; var tot:longint; t:tree; procedure insert(data:longint;var tre:tree); begin if tre=nil then begin new(tre); tre^.data:=data; tre^.time:=1; tre^.lc:=nil; tre^.rc:=nil; exit; end; if data=tre^.data then begin inc(tre^.time); exit; end; if data<tre^.data then insert(data,tre^.lc) else insert(data,tre^.rc); end; procedure init; var x:longint; begin tot:=0; while not eof do begin inc(tot); readln(x); insert(x,t); end; end; procedure zx(var tre:tree); begin if tre=nil then exit else begin zx(tre^.lc); writeln(tre^.data,' ',(tre^.time/tot)*100:0:4);//唯一不同的是,这里除以tot后必须乘100,这里题目没有说清 zx(tre^.rc); end; end; begin assign(input,'NDK1600.in'); reset(input); assign(output,'NDK1600.out'); rewrite(output); init; zx(t); close(input); close(output); end. PS:跟统计数字类似

     

     


    最新回复(0)