比赛 不平凡的世界 评测结果 AAAWWWWAAW
题目名称 不平凡的boss 最终得分 50
用户昵称 cdcq 运行时间 2.213 s
代码语言 C++ 内存使用 3.67 MiB
提交时间 2015-11-05 10:13:51
显示代码纯文本
  1. #include<iostream>
  2. #include<cstdio>
  3. #include<algorithm>
  4. using namespace std;
  5. struct guai
  6. {
  7. int flag;
  8. int ap;
  9. int ad;
  10. int mp;
  11. int id;
  12. int min;
  13. int minflag;
  14. }a[110000];
  15. int dui[110000],n;
  16. bool pai(guai x,guai y)
  17. {
  18. return(x.min>y.min);
  19. }
  20. int main()
  21. {
  22. freopen("playwithboss.in","r",stdin);
  23. freopen("playwithboss.out","w",stdout);
  24. cin>>n;
  25. for(int i=1;i<=n;i++)
  26. {
  27. scanf("%d%d%d",&a[i].ad,&a[i].ap,&a[i].mp);
  28. a[i].id=i,a[i].flag=1;
  29. if(a[i].ad<=a[i].ap&&a[i].ad<=a[i].mp)
  30. a[i].min=a[i].ad,a[i].minflag=1;
  31. else if(a[i].ap<=a[i].ad&&a[i].ap<=a[i].mp)
  32. a[i].min=a[i].ap,a[i].minflag=2;
  33. else
  34. a[i].min=a[i].mp,a[i].minflag=3;
  35. }
  36. sort(a+1,a+n+1,pai);
  37. int money=0;
  38. for(int i=1;i<=n;i++)
  39. {
  40. if(a[i].flag==1)
  41. {
  42. a[i].flag=0;
  43. money+=a[i].min;
  44. if(a[i].minflag==1)
  45. for(int j=i+1;j<=n;j++)
  46. if(a[j].ad<=a[i].min)
  47. a[j].flag=0;
  48. if(a[i].minflag==2)
  49. for(int j=i+1;j<=n;j++)
  50. if(a[j].ap<=a[i].min)
  51. a[j].flag=0;
  52. if(a[i].minflag==3)
  53. for(int j=i+1;j<=n;j++)
  54. if(a[j].mp<=a[i].min)
  55. a[j].flag=0;
  56. }
  57. }
  58. cout<<money<<endl;
  59. return 0;
  60. }
  61.