• 可能是退役前的最后一次交流


    队爷们的神题选讲

    yjc:CF235D

    奇怪小容斥

    枚举点对(x,y)表示以x为重心能分治到y的期望,树上直接用两点间距离求,中间有环就 左边不断+右边不断-两边都不断 容斥一下

     1 #include<cstdio>
     2 #include<cstring>
     3 #include<algorithm>
     4 using namespace std;
     5 const int N=3005;
     6 int n,f,b,t1,t2,cnt,tot; 
     7 int deg[N],que[N],vis[N];
     8 int p[N],noww[N<<1],goal[N<<1];
     9 double ans;
    10 void Link(int f,int t)
    11 {
    12     noww[++cnt]=p[f];
    13     goal[cnt]=t,p[f]=cnt;
    14     noww[++cnt]=p[t];
    15     goal[cnt]=f,p[t]=cnt;
    16 }
    17 void DFS(int nde,int len,int cor)
    18 {
    19     vis[nde]=true;
    20     if(deg[nde]==2) cor++;
    21     if(cor>=2) ans+=1.0/len+1.0/(len+tot-cor*2+2)-1.0/(len+tot-cor);
    22     else ans+=1.0/len;
    23     for(int i=p[nde],g;i;i=noww[i])
    24         if(!vis[g=goal[i]]) DFS(g,len+1,cor);
    25 }
    26 int main()
    27 {
    28     scanf("%d",&n);
    29     for(int i=1;i<=n;i++)
    30     {
    31         scanf("%d%d",&t1,&t2),t1++,t2++;
    32         Link(t1,t2),deg[t1]++,deg[t2]++;
    33     }
    34     f=0,b=-1;
    35     for(int i=1;i<=n;i++)
    36         if(deg[i]==1) que[++b]=i;
    37     while(f<=b)
    38     {
    39         int tn=que[f++];
    40         for(int i=p[tn],g;i;i=noww[i])
    41             if((--deg[g=goal[i]])==1) que[++b]=g;
    42     }
    43     for(int i=1;i<=n;i++) tot+=(deg[i]==2);
    44     for(int i=1;i<=n;i++) 
    45         memset(vis,0,sizeof vis),DFS(i,1,0);
    46     printf("%.7f",ans);
    47     return 0;
    48 }

    (不折叠代码来假装这篇文章有很多内容的博主是屑

    tbl:2018 Chinese Multi-University Training, BeihangU Contest L(CF102114)

    yzh:一道题

    算贡献,本质是给边定向,对未来承诺

    dp[i][j][k]表示到达j个其中k个在i的子树内

    发现复杂度高达$O(n^6)$,预处理一些东西

    (摔

    zky的

    ywy:HAOI2017字符串

    i207M的

    说了半天就写了一道题?

  • 相关阅读:
    父类引用指向子类对象详解
    词尾的-sion和-tion的发音规则
    att&ack学习笔记6
    att&ack框架学习笔记5
    att&ack学习笔记4
    att&ck框架学习笔记3
    att&ck学习笔记2
    att&ck学习笔记1
    kerberos系列之spark认证配置
    kerberos系列之kerberos安装
  • 原文地址:https://www.cnblogs.com/ydnhaha/p/10623159.html
Copyright © 2020-2023  润新知