不知为毛,过不了

我的代码:

#include<stdio.h>

int main()
{
 int n,a[30],b[30],temp,i,j,s1,s2;
 double c[30];
 while(scanf("%d",&n)!=EOF)
 {
  s1=0;
  s2=0;
  for(i=0;i<n;i++)
  {
   scanf("%d%d",&a[i],&b[i]);
   s1+=a[i];
   c[i]=a[i]/b[i];
  }
     for(i=0;i<n;i++)
  {
   for(j=i+1;j<n;j++)
   {
    if(c[i]<c[j])
    {
     temp=c[i];
     c[i]=c[j];
     c[j]=temp;
     temp=b[i];
     b[i]=b[j];
     b[j]=temp;
     temp=a[i];
     a[i]=a[j];
     a[j]=temp;
    }
   }
  }
  for(i=0;i<n;i++)
  {
      s2+=s1*b[i];
   s1-=a[i];
  }
  printf("%d\n",s2);
 }
}

Ac的代码:

  1. #include <stdio.h>
  2. #include <algorithm>
  3. using namespace std;
  4. struct Node
  5. {
  6. int dps;
  7. int hp;
  8. }a[30];
  9. int cmp(Node x,Node y)
  10. {
  11. return x.hp*y.dps<y.hp*x.dps;//按比率排,避免小数,所以讲式子进行转换
  12. }
  13. int main()
  14. {
  15. int t,i;
  16. int sum,ans;
  17. while(~scanf("%d",&t))
  18. {
  19. sum = ans = 0;
  20. for(i = 0;i<t;i++)
  21. {
  22. scanf("%d%d",&a[i].dps,&a[i].hp);
  23. sum+=a[i].dps;
  24. }
  25. sort(a,a+t,cmp);
  26. for(i = 0;i<t;i++)
  27. {
  28. ans+=sum*a[i].hp;
  29. sum-=a[i].dps;
  30. }
  31. printf("%d\n",ans);
  32. }
  33. return 0;
  34. }
  35. 有毛区别

hdoj 4310 贪心的更多相关文章

  1. HDU 4310 贪心

    题意 在游戏中你的dps为1但是hp无限 给出n个敌人的dps与hp 你一秒能打掉一个敌人你的dps的hp 当你输出的时候 所有活着的敌人都会打你 求杀死所有敌人时你掉的最少hp 一开始想错了 排序的 ...

  2. HDOJ 2209 贪心

    翻纸牌游戏 Time Limit: 9000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submi ...

  3. HDU4310HERO贪心问题

    问题描述 When playing DotA with god-like rivals and pig-like team members, you have to face an embarrass ...

  4. HDOJ 1009. Fat Mouse' Trade 贪心 结构体排序

    FatMouse' Trade Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) ...

  5. HDU 4310 Hero (贪心算法)

    A - Hero Time Limit:3000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit Sta ...

  6. 贪心 HDOJ 4726 Kia's Calculation

    题目传送门 /* 这题交给队友做,做了一个多小时,全排列,RE数组越界,赛后发现读题读错了,囧! 贪心:先确定最高位的数字,然后用贪心的方法,越高位数字越大 注意:1. Both A and B wi ...

  7. BFS+贪心 HDOJ 5335 Walk Out

    题目传送门 /* 题意:求从(1, 1)走到(n, m)的二进制路径值最小 BFS+贪心:按照标程的作法,首先BFS搜索所有相邻0的位置,直到1出现.接下去从最靠近终点的1开始, 每一次走一步,不走回 ...

  8. [HDOJ - 5208] Where is Bob 【DFS+按位贪心】

    题目链接:HDOJ - 5208 题目分析 使用按位贪心的思想,即从高位向低位枚举,尽量使这一位的答案为 1 . 我们使用 DFS ,每次就是对于  [l1, r1] [l2, r2] x  进行处理 ...

  9. HDOJ(HDU).1864 最大报销额 (贪心)

    HDOJ(HDU).1864 最大报销额 题意分析 题目有点问题,原题中说的 单项物品的价值不得超过600元 应该是单类物品的价值不能超过600元. 一开始以为是01背包,后来按贪心写过了. 一张一张 ...

随机推荐

  1. bzoj1706

    倍增好题,f[p,i,j]表示i到j经过了2^p条边走过的最短路径显然f[p+1]可以由f[p]转移来然后对n二进制拆分累加即可 ; ..,..] of int64; f,pf:..] of int6 ...

  2. [FJSC2014]折线统计

    [题目描述] 二维平面上有n 个点(xi, yi),现在这些点中取若干点构成一个集合S,对它们按照x 坐标排序,顺次连接,将会构成一些连续上升.下降的折线,设其数量为f(S).如下图中,1->2 ...

  3. HDOJ/HDU 1073 Online Judge(字符串处理~)

    Problem Description Ignatius is building an Online Judge, now he has worked out all the problems exc ...

  4. ubuntu 桌面

    u盘虚拟光驱打开.ios,读写到u盘 goagent:wine goagent.exe的路径:右键在终端中运行proxy.py. 终端中wine exe文件 ubuntu安装镜像文件: 下载压缩包解压 ...

  5. Poj 2887-Big String Splay

    题目:http://poj.org/problem?id=2887       Big String Time Limit: 1000MS   Memory Limit: 131072K Total ...

  6. asp json

    <script language="JScript" runat="Server">function toObject(json) {    eva ...

  7. Sicily1153-马的周游问题:启发式搜索

    代码地址: https://github.com/laiy/Datastructure-Algorithm/blob/master/sicily/1153.c 题目如下: 1153. 马的周游问题 C ...

  8. 一键清除cvs/svn 目录

    步骤一.编写注册表脚本      新建一个文本文件,把下面的代码COPY进去,保存为delSVNorCVS.reg(可直接从本文附件中下载) Windows Registry Editor Versi ...

  9. m版页面判断安卓与ios系统

    安卓系统和ios系统,在做app里面嵌入m版时,有时候会发现,ios上面的那个电池状态栏不占位置,但是安卓的状态栏占位,所以需要区分系统样式单独处理一下! var sUserAgent=navigat ...

  10. myNote

    源码地址 :http://450640526.ys168.com/ 编辑器是WEBBWOSER制作的 你的Internet Explorer的版本至少要是8.0的否则用不了 还有很多BUG 很多功能没 ...