/in/foo.cc: In function 'bool check(long long int)':
/in/foo.cc:44:28: warning: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses]
for(int i=1;i<=num;i++) if(no[son[i].id]) if(cnt[son[i].id])
^
/in/foo.cc: In function 'int main()':
/in/foo.cc:66:25: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
while(l<=r) check(mid=l+r>>1)?r=(ans=mid)-1:l=mid+1;
~^~
/in/foo.cc:67:20: warning: 'ans' may be used uninitialized in this function [-Wmaybe-uninitialized]
printf("%lld",ans);
^