zoukankan      html  css  js  c++  java
  • 【CF500D】New Year Santa Network(树上统计)

     1 var head,vet,next,x,y,dep,size:array[1..200000]of longint;
     2     z:array[1..200000]of extended;
     3     n,i,m,tot,x1:longint;
     4     ans,fenmu,y1:extended;
     5 
     6 procedure add(a,b:longint);
     7 begin
     8  inc(tot);
     9  next[tot]:=head[a];
    10  vet[tot]:=b;
    11  head[a]:=tot;
    12 end;
    13 
    14 procedure dfs(u,fa:longint);
    15 var e,v:longint;
    16 begin
    17  size[u]:=1;
    18  e:=head[u];
    19  while e<>0 do
    20  begin
    21   v:=vet[e];
    22   if v<>fa then
    23   begin
    24    dep[v]:=dep[u]+1;
    25    dfs(v,u);
    26    size[u]:=size[u]+size[v];
    27   end;
    28   e:=next[e];
    29  end;
    30 end;
    31 
    32 procedure swap(var x,y:longint);
    33 var t:longint;
    34 begin
    35  t:=x; x:=y; y:=t;
    36 end;
    37 
    38 function clac(k:longint):extended;
    39 var xx,yy:extended;
    40 begin
    41  xx:=size[y[k]];
    42  yy:=n-xx;
    43  exit(2.0*z[k]/fenmu*(xx*(xx-1)/2*yy+yy*(yy-1)/2*xx));
    44 end;
    45 
    46 begin
    47  //assign(input,'1.in'); reset(input);
    48  //assign(output,'1.out'); rewrite(output);
    49  readln(n);
    50  for i:=1 to n-1 do
    51  begin
    52   read(x[i],y[i],z[i]);
    53   add(x[i],y[i]);
    54   add(y[i],x[i]);
    55  end;
    56  dfs(1,0);
    57  for i:=1 to n-1 do
    58   if dep[x[i]]>dep[y[i]] then swap(x[i],y[i]);
    59  fenmu:=1.0*n*(n-1)*(n-2)/6;
    60  for i:=1 to n-1 do ans:=ans+clac(i);
    61 
    62 
    63  readln(m);
    64  for i:=1 to m do
    65  begin
    66   readln(x1,y1);
    67   ans:=ans-clac(x1);
    68   z[x1]:=y1;
    69   ans:=ans+clac(x1);
    70   writeln(ans:0:10);
    71  end;
    72 
    73  //close(input);
    74  //close(output);
    75 end.
    View Code
    null
  • 相关阅读:
    简易计算器
    方法的声明和使用
    真与假与c#,java中的不同之处
    SD卡添加文件,添加不进去,报 Read-only file system错误
    BitMap画图
    绘制一些基本图形(例如矩形,圆形,椭圆,多边形)
    SufaceView(绘图类)
    CanVas类(绘图类)
    回车键
    [动态规划][LIS+方案数]低价购买
  • 原文地址:https://www.cnblogs.com/myx12345/p/5034110.html
Copyright © 2011-2022 走看看