1. 程式人生 > >天平 (Not so Mobile UVA - 839)

天平 (Not so Mobile UVA - 839)

scan col %d har ace int inf std 分享圖片

題目描述:

技術分享圖片

題目思路:

1.DFS建樹

2.只有每個樹的左右子樹都平衡整顆樹才平衡

 1 #include <iostream>
 2 using namespace std;
 3 
 4 bool solve(int& w)
 5 {
 6     int d1,w1,d2,w2;
 7     cin >> w1 >> d1 >> w2 >> d2 ;
 8     bool b1 = true ,b2 = true ;
 9     if(!w1) b1 = solve(w1) ;
10
if(!w2) b2 = solve(w2) ; 11 w = w1 + w2 ; 12 return (b1 && b2 && (w1 * d1 == w2 * d2)) ; 13 } 14 15 int main(int argc, char *argv[]) 16 { 17 int t,w; 18 scanf("%d",&t) ; 19 while(t--) 20 { 21 if(solve(w)) cout << "YES" << endl;
22 else cout << "NO" << endl ; 23 if(t) cout << endl ; 24 } 25 return 0; 26 }

天平 (Not so Mobile UVA - 839)