B.Bits(skiped)
グラフィックス出力、複雑なビット
D.DDoS
質問の意味:
加重点n及びmエッジ有向非循環グラフ(トポロジー)を得るために、右側がかかる時間である
パケットの数を送信することができる1後の任意の時点を、パケットの数がブロックされ、ポイントを受信し、N 1時間後にすべてのパケット。
異なるデータパケットが同じ経路ではないことができ、Q nはドット数のデータパケットが最大受信しました
アイデア:
背面に受信されなかったデータパケットを受信した後ので、そうデータ・パケットの数nその時点までに受け入れるように、データパケットが同時に到着しなければなりません。
この問題は、すべてのパケットが同じ時刻に到着N、エッジ重みは役に立たないように、パケット送信時間を調整することにより、困難な点1見出されました。
したがって、どのように多くの異なるパス1〜nは図トポロジーで計数、DPがある問題となります。
タイトルは、保証、しかし非環状エッジ重み、エッジ重み計算複数のパスが存在しないことを確認してください。
コード:
#include<bits/stdc++.h>
using namespace std;
const int maxm=1e5+5;
const int mod=20010905;
vector<int>g[maxm];
int in[maxm];
int d[maxm];
int n,m;
signed main(){
cin>>n>>m;
for(int i=1;i<=m;i++){
int a,b,c;
cin>>a>>b>>c;
g[a].push_back(b);
g[b].push_back(a);
in[b]++;
}
queue<int>q;
q.push(1);
d[1]=1;
while(!q.empty()){
int x=q.front();
q.pop();
for(int v:g[x]){
in[v]--;
d[v]=(d[v]+d[x])%mod;
if(!in[v]){
q.push(v);
}
}
}
cout<<d[n]<<endl;
return 0;
}