zoukankan      html  css  js  c++  java
  • 【BZOJ 3036】 绿豆蛙的归宿

    求期望的题目(~~~water~~~)

       压了下代码,压成15行hhh;

       我把代码压成这么丑估计也没有人看吧;

       毕竟是zky讲的一个水题,就当给博客除草了;

       dfs回溯时求当前节点的f,除以当前节点的出度(chu[x]),最后输出f[1]
     
    #include<cstdio>
    #include<cctype>
    #include<cstring>
    #include<algorithm>
    #define ll long long;
    using namespace std;
    struct node{int nxt,to,v;}E[200003];
    bool vis[100003];double f[100003];int cnt=1,N,M,point[100003],chu[100003];
    int getint(){char c;while (!isdigit(c=getchar()));int a=c-'0';while (isdigit(c=getchar()))a=a*10+c-'0';return a;}
    void insect(int a,int b,int c){E[cnt].nxt=point[a];point[a]=cnt;E[cnt].to=b;E[cnt].v=c;cnt++;}
    void dfs(int x){if (vis[x]) return; vis[x]=1;
        for (int i=point[x];i;i=E[i].nxt){dfs(E[i].to);f[x]+=E[i].v+f[E[i].to];}
        if (chu[x]!=0) f[x]=f[x]*1.0/chu[x];}
    int main(){N=getint(); M=getint(); memset(chu,0,sizeof(0));memset(point,0,sizeof(0)); memset(f,0,sizeof(f)); memset(vis,0,sizeof(vis));
        while (M){M--;int a=getint(),b=getint(),c=getint();insect(a,b,c);chu[a]++;}dfs(1);printf("%.2lf
    ",f[1]);return 0;}
    

      

    这样就可以了,水一水BZOJ,纪念BZOJ权限费用增大为500元/年,800元/2年

  • 相关阅读:
    SPOJ SAMER08A
    SPOJ TRAFFICN
    CS Academy Set Subtraction
    CS Academy Bad Triplet
    CF Round 432 C. Five Dimensional Points
    CF Round 432 B. Arpa and an exam about geometry
    SPOJ INVCNT
    CS Academy Palindromic Tree
    身体训练
    简单瞎搞题
  • 原文地址:https://www.cnblogs.com/abclzr/p/5193709.html
Copyright © 2011-2022 走看看