Submission #2875531
Source Code Expand
#include<cstdio> #include<vector> #include<algorithm> using namespace std; #define MAXN 100000 #define INF (1ll<<50) int N,M; struct Edge{ int v,w; Edge(){} Edge(int a,int b){ v=a,w=b; } }; vector<Edge> G[MAXN+5]; long long Lim[2][MAXN+5]; //S1 < Lim[0][i] //S1 > Lim[1][i] void dfs(int u,int f,int Sign,long long Sum){ for(int i=0;i<int(G[u].size());i++){ int v=G[u][i].v,w=G[u][i].w; if(v!=f){ int id=Sign==1?0:1; long long tmp=Sum+Sign*w; if(Lim[id][v]!=INF){ if(Lim[id][v]!=tmp){ puts("0"); exit(0); } else continue; } Lim[id][v]=tmp; dfs(v,u,-Sign,tmp); } } } int main(){ scanf("%d%d",&N,&M); for(int i=1;i<=M;i++){ int u,v,w; scanf("%d%d%d",&u,&v,&w); G[u].push_back(Edge(v,w)); G[v].push_back(Edge(u,w)); } fill(Lim[0]+1,Lim[0]+N+1,INF); fill(Lim[1]+1,Lim[1]+N+1,INF); dfs(1,-1,1,0ll); long long Left=0,Right=INF; for(int i=2;i<=N;i++){ if(Lim[1][i]!=INF) Left=max(Left,Lim[1][i]); if(Lim[0][i]!=INF) Right=min(Right,Lim[0][i]); } long long Sure=-1,flag=INF; for(int i=2;i<=N;i++) if(Lim[0][i]!=INF&&Lim[1][i]!=INF){ long long k=Lim[0][i]+Lim[1][i]; if(k%2||k/2<0) flag=0; if(Sure==-1) Sure=k/2; else if(Sure!=k) flag=0; } if(Sure!=-1){ if(Left<Sure&&Sure<Right) puts("1"); else puts("0"); return 0; } printf("%lld",min(flag,max(Right-Left-1,0ll))); }
Submission Info
Submission Time | |
---|---|
Task | E - + Graph |
User | vjudge3 |
Language | C++14 (GCC 5.4.1) |
Score | 600 |
Code Size | 1714 Byte |
Status | AC |
Exec Time | 59 ms |
Memory | 19712 KB |
Compile Error
./Main.cpp: In function ‘int main()’: ./Main.cpp:42:24: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf("%d%d",&N,&M); ^ ./Main.cpp:45:33: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf("%d%d%d",&u,&v,&w); ^
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 600 / 600 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sampleNo.txt, samplePath.txt, sampleTri.txt |
All | OK_0.txt, OK_1.txt, OK_2.txt, OK_3.txt, OK_4.txt, close_0.txt, close_1.txt, close_2.txt, close_3.txt, close_4.txt, many_0.txt, many_1.txt, many_2.txt, many_3.txt, many_4.txt, many_5.txt, many_6.txt, many_7.txt, max.txt, maxBip.txt, multiple_0.txt, multiple_1.txt, multiple_2.txt, multiple_3.txt, multiple_4.txt, multiple_5.txt, multiple_6.txt, multiple_7.txt, oddLoop.txt, oddLoop_0.txt, oddLoop_1.txt, oddLoop_2.txt, rnd_0.txt, rnd_1.txt, rnd_2.txt, rnd_3.txt, rnd_4.txt, rnd_5.txt, rnd_6.txt, rnd_7.txt, rnd_8.txt, rnd_9.txt, sampleNo.txt, samplePath.txt, sampleTri.txt, star.txt, star_0.txt, star_1.txt, unique_0.txt, unique_1.txt, unique_2.txt, unique_3.txt, unique_4.txt, unique_5.txt, unique_6.txt, unique_7.txt, unique_8.txt, unique_9.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
OK_0.txt | AC | 43 ms | 8192 KB |
OK_1.txt | AC | 43 ms | 8192 KB |
OK_2.txt | AC | 43 ms | 8192 KB |
OK_3.txt | AC | 43 ms | 8192 KB |
OK_4.txt | AC | 44 ms | 8192 KB |
close_0.txt | AC | 51 ms | 11264 KB |
close_1.txt | AC | 56 ms | 10624 KB |
close_2.txt | AC | 49 ms | 10752 KB |
close_3.txt | AC | 50 ms | 9344 KB |
close_4.txt | AC | 49 ms | 8704 KB |
many_0.txt | AC | 43 ms | 7808 KB |
many_1.txt | AC | 44 ms | 7680 KB |
many_2.txt | AC | 46 ms | 7552 KB |
many_3.txt | AC | 44 ms | 7552 KB |
many_4.txt | AC | 44 ms | 7552 KB |
many_5.txt | AC | 45 ms | 7552 KB |
many_6.txt | AC | 45 ms | 7552 KB |
many_7.txt | AC | 44 ms | 7680 KB |
max.txt | AC | 29 ms | 4608 KB |
maxBip.txt | AC | 36 ms | 5376 KB |
multiple_0.txt | AC | 48 ms | 8448 KB |
multiple_1.txt | AC | 50 ms | 8704 KB |
multiple_2.txt | AC | 51 ms | 8832 KB |
multiple_3.txt | AC | 52 ms | 8832 KB |
multiple_4.txt | AC | 52 ms | 8960 KB |
multiple_5.txt | AC | 52 ms | 8832 KB |
multiple_6.txt | AC | 52 ms | 8832 KB |
multiple_7.txt | AC | 50 ms | 8704 KB |
oddLoop.txt | AC | 54 ms | 15104 KB |
oddLoop_0.txt | AC | 52 ms | 14976 KB |
oddLoop_1.txt | AC | 38 ms | 14464 KB |
oddLoop_2.txt | AC | 56 ms | 19712 KB |
rnd_0.txt | AC | 50 ms | 8576 KB |
rnd_1.txt | AC | 59 ms | 10112 KB |
rnd_2.txt | AC | 52 ms | 8960 KB |
rnd_3.txt | AC | 52 ms | 10240 KB |
rnd_4.txt | AC | 50 ms | 9856 KB |
rnd_5.txt | AC | 48 ms | 9344 KB |
rnd_6.txt | AC | 51 ms | 9472 KB |
rnd_7.txt | AC | 55 ms | 9216 KB |
rnd_8.txt | AC | 43 ms | 7168 KB |
rnd_9.txt | AC | 39 ms | 6656 KB |
sampleNo.txt | AC | 2 ms | 2560 KB |
samplePath.txt | AC | 2 ms | 2560 KB |
sampleTri.txt | AC | 2 ms | 2560 KB |
star.txt | AC | 39 ms | 8052 KB |
star_0.txt | AC | 39 ms | 8052 KB |
star_1.txt | AC | 38 ms | 8052 KB |
unique_0.txt | AC | 55 ms | 11008 KB |
unique_1.txt | AC | 56 ms | 11008 KB |
unique_2.txt | AC | 55 ms | 11008 KB |
unique_3.txt | AC | 55 ms | 11008 KB |
unique_4.txt | AC | 55 ms | 11008 KB |
unique_5.txt | AC | 55 ms | 11008 KB |
unique_6.txt | AC | 55 ms | 11008 KB |
unique_7.txt | AC | 55 ms | 11136 KB |
unique_8.txt | AC | 55 ms | 11008 KB |
unique_9.txt | AC | 55 ms | 11008 KB |