贪心算法

02-29 阅读 0评论

贪心算法

  • 例题
    • 1、股票买卖
      • 题目信息
      • 思路
      • 题解
      • 2、货仓选址
        • 题目信息
        • 思路
        • 题解
        • 3、糖果传递
          • 题目信息
          • 思路
          • 题解
          • 4、雷达设备
            • 题目信息
            • 思路
            • 题解

              例题

              1、股票买卖

              题目信息

              贪心算法

              贪心算法

              思路

              相邻两天,后>前,则交易一次

              题解

              #include 
              #define endl '\n'
              #define int long long
              #define maxsize 100010
              using namespace std;
              int n;
              int money[maxsize];
              signed main()
              {
                  ios::sync_with_stdio(0);
                  cin.tie(0);
                  cout.tie(0);
                  cin>>n;
                  int sum=0;
                  for(int i=0;i
                      cin>money[i];
                  }
                  for(int i=0;i
                      int cha=money[i+1]-money[i];
                      if(cha 0)
                      {
                          sum+=cha;
                      }
                  }
                  cout
                  ios::sync_with_stdio(0);
                  cin.tie(0);
                  cout.tie(0);
                  cinn;
                  for(int i=0;i
                      cinnum[i];
                  }
                  sort(num,num+n);
                  int c=num[(n-1)/2];
                  int sum=0;
                  for(int i=0;i
                      sum +=abs(num[i]-c);
                  }
                  cout
                  ios::sync_with_stdio(0);
                  cin.tie(0);
                  cout.tie(0);
                  int sum=0;
                  int count=0;
                  cinn;
                  for(int i=1;i
                      c[i]=c[i-1]+average-a[i];
                  }
                  sort(c+1,c+n+1);
                  int xn=c[(1+n)/2];
                  for(int i=1;i
                  double l;
                  double r;
              }qujian[maxsize];
              bool judge(node a,node b)
              {
                  return a.r
                  ios::sync_with_stdio(0);
                  cin.tie(0);
                  cout.tie(0);
                  int x,y;
                  int count=0;
                  bool fail=false;
                  cinnd;
                  for(int i=0;i
                      cinxy;
                      if(d
                          double len=sqrt(d*d-y*y);
                          qujian[i].l=x-len;
                          qujian[i].r=x+len;
                      }
                  }
                  if(fail) cout
                      sort(qujian,qujian+n,judge);
                      double jilu=qujian[0].r;
                      count=1;
                      for(int i=1;i
                          if(jilu
                              count++;
                              jilu=qujian[i].r;
                          }
                      }
                      cout
免责声明
本网站所收集的部分公开资料来源于AI生成和互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。
文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
评论列表 (暂无评论,人围观)

还没有评论,来说两句吧...

目录[+]