zoukankan      html  css  js  c++  java
  • PAT:1079. Total Sales of Supply Chain (25) AC

    #include<stdio.h>
    #include<math.h>
    #include<vector>
    using namespace std;
    const int MAX=100010;
    
    int DEPest=0;
    int root=-1,N;
    double P,r,sum=0;
    
    vector<int> child[MAX];        //child[父亲][孩子]  二维数组表示树形结构
    
    double price[MAX];          //记录叶子节点的权值
    
    void DFS(int root,int depth)
    {
      if(child[root].size()==0)    //叶子节点开始判断深度
      {
        double p=pow(1+r,1.0*depth)*P;    //【skill】转化为double型,乘以1.0
        /*for(int i=0 ; i<depth ; ++i)
          p*=(1+r);
          */
        sum+=p*price[root];      //总价加上数量乘以单价
        return;
      }
      for(int i=0 ; i<child[root].size() ; ++i)
        DFS(child[root][i],depth+1);
    }
    int main()
    {
    
      scanf("%d%lf%lf",&N,&P,&r);
      r/=100;              //换算成百分数
      for(int i=0 ; i<N ; ++i)
      {
        int father,tmp;
        scanf("%d",&father);
        if(father!=0)
        {
          for(int j=0 ; j<father ; ++j)
          {
            scanf("%d",&tmp);
            child[i].push_back(tmp);
          }
        }
        else
        {
          scanf("%lf",&price[i]);        //叶子节点权值
        }
      }
      DFS(0,0);
      printf("%.1f",sum);
      return 0;
    }
  • 相关阅读:
    WCF
    WCF
    C#
    ASP.NET MVC
    WCF
    关于函数的参数
    关于函数的return
    移动Web开发技巧汇总(转)
    关于reset.css的那些事
    关于iphone自动播放音频和视频问题的解决办法
  • 原文地址:https://www.cnblogs.com/Evence/p/4321698.html
Copyright © 2011-2022 走看看