zoukankan      html  css  js  c++  java
  • Codeforces Global Round 6D(VECTOR<ARRAY<INT,3> >)

    一个人只要存在债务关系,那么他的债务可以和这整个债务关系网中任何人连边,和他当初借出或欠下的人没有关系。只需要记录他的债务值即可。

     1 #define HAVE_STRUCT_TIMESPEC
     2 #include<bits/stdc++.h>
     3 using namespace std;
     4 long long val[100007];
     5 vector<array<long long,3> >v;
     6 int main(){
     7     ios::sync_with_stdio(false);
     8     cin.tie(NULL);
     9     cout.tie(NULL);
    10     long long n;
    11     cin>>n;
    12     long long m;
    13     cin>>m;
    14     for(long long i=1;i<=m;++i){
    15         long long a,b,c;
    16         cin>>a>>b>>c;
    17         val[a]-=c;
    18         val[b]+=c;
    19     }
    20     long long pos=1;
    21     for(long long i=1;i<=n;++i){
    22         while(val[i]>0){
    23             while(val[pos]>=0)
    24                 ++pos;
    25             long long mn=min(-val[pos],val[i]);
    26             val[i]-=mn;
    27             val[pos]+=mn;
    28             v.push_back({pos,i,mn});
    29         }
    30     }
    31     cout<<v.size()<<"
    ";
    32     for(auto it:v)
    33         cout<<it[0]<<" "<<it[1]<<" "<<it[2]<<"
    ";
    34     return 0;
    35 }
    保持热爱 不懈努力 不试试看怎么知道会失败呢(划掉) 世上无难事 只要肯放弃(划掉)
  • 相关阅读:
    ES6标准入门之正则表达式的拓展
    将博客搬至CSDN
    CUDA杂谈
    QT源码解析笔记
    图解DTS和PTS
    图解 I帧,B帧以及P帧
    这半年的一些事情
    C++的一些编程规范
    pjsip与QT进行适配
    编程规范检测脚本
  • 原文地址:https://www.cnblogs.com/ldudxy/p/12073577.html
Copyright © 2011-2022 走看看