码迷,mamicode.com
首页 > 其他好文 > 详细

【NOIP模拟赛】Evensgn 的债务 乱搞

时间:2017-08-09 21:07:55      阅读:169      评论:0      收藏:0      [点我收藏+]

标签:span   pid   log   范围   void   get   pac   noip   reg   

biubiu~~~

我们发现按照这道题的题意我们把一个个人的前后(欠钱,被欠钱)都缩一下,那么他对其他人没有影响,那么我们就可以依次缩完每个人,而且每个人最后的状态都是要买欠要么被欠,那么我们可以知道他的钱数而且一下子就知道了...........

论数据范围把10^6看成106的悲伤........

#include <cstdio>
namespace pre{
  inline void read(int &sum){
    register char ch=getchar();
    for(sum=0;ch<0||ch>9;ch=getchar());
    for(;ch>=0&&ch<=9;sum=(sum<<1)+(sum<<3)+ch-0,ch=getchar());
  }
}
namespace P=pre;
namespace wq{
  int n,m;
  int a[1000100];
  inline void Work(){
    using P :: read;
    read(n),read(m);
    for(int i=1,A,B,C;i<=m;i++){
      read(A),read(B),read(C);
      a[A]-=C,a[B]+=C;
    }
  }
}
int main(){
  wq::Work();
  int ans=0;
  for(int i=1;i<=wq::n;i++){
    if(wq::a[i]>0)
      ans+=wq::a[i];
  }
  printf("%d",ans);
  return 0;
}

 

【NOIP模拟赛】Evensgn 的债务 乱搞

标签:span   pid   log   范围   void   get   pac   noip   reg   

原文地址:http://www.cnblogs.com/TSHugh/p/7327406.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!