• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            gzwzm06

              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              1 隨筆 :: 52 文章 :: 17 評論 :: 0 Trackbacks
            #include <stdio.h>
            #include 
            <memory.h>

            const int MAXN = 1001 ;

            int g_Sum , g_NumArr[MAXN] ; //記錄所有節(jié)點的權(quán)值
            bool OK , g_visible[MAXN] ; //記錄哪些是葉結(jié)點

            void ReExp( int &nPos, int sum )
            {
                
            if ( OK ) return ;   //找到則返回
                
                
            int num = g_NumArr[nPos]  + sum ;
                
            if ( !g_visible[nPos + 1&& !g_visible[nPos + 2] )
                
            {
                    
            if ( g_Sum == num )
                        OK 
            = true ;
                    nPos 
            += 2 ;
                    
            return ;
                }

                nPos
            ++ ;
                
            if ( g_visible[nPos] )
                
            {
                    ReExp( nPos, num ) ;
                }

                nPos
            ++ ;
                
            if ( g_visible[nPos] )
                
            {
                    ReExp( nPos, num ) ;
                }

                
            }


            void Init()
            {
                OK 
            = false;

                memset( g_visible, 
            0sizeof(g_visible)) ;
                memset( g_NumArr, 
            0sizeof(g_NumArr)) ;
            }


            int main()
            {
            //    freopen("in.txt", "r", stdin);

                
            char cmd ;
                
            int flag, mark, num, m ;
                
            bool aNum ;
                
            while ( scanf("%d"&g_Sum) != EOF )
                
            {
                    Init() ;
                    flag 
            = 1;
                    
            while ( (cmd = getchar()) != '(' ) ;
                    mark 
            = 1;
                    m 
            = num = 0;
                    aNum 
            = false ;
                            
            //處理輸入數(shù)據(jù),注意有負(fù)數(shù)
                    while ( mark != 0 )
                    
            {
                        cmd 
            = getchar() ;
                        
            switch(cmd)
                        
            {
                        
            case '(':
                            mark
            ++;
                            
            if ( aNum )
                                g_visible[m] 
            = true ;
                            aNum 
            = false ;
                            g_NumArr[m
            ++= num * flag;
                            num 
            = 0;
                            flag 
            = 1 ;
                            
            break;
                        
            case ')':
                            mark
            --;
                            
            break;
                        
            case '-':
                            flag 
            = -1;
                            
            break;
                        
            case ' ':
                        
            case '\0':
                        
            case '\n':
                            
            break;
                        
            default:
                            num 
            = num * 10 + (cmd - '0');
                            aNum 
            = true ;
                        }

                    }

                    
                    
            int pos = 0 ;
                    ReExp( pos, 
            0 ) ;

                    
            if ( OK ){
                        printf(
            "yes\n");
                    }

                    
            else {
                        printf(
            "no\n");
                    }

                    

                }

                
            return 0 ;
            }
            posted on 2008-10-31 00:07 閱讀(315) 評論(0)  編輯 收藏 引用 所屬分類: 與Tree相關(guān)的題
            亚洲国产成人久久综合野外| 久久天天躁狠狠躁夜夜2020一| 色噜噜狠狠先锋影音久久| 国产一区二区三精品久久久无广告| 久久精品视频一| 精品久久久久久| 久久亚洲私人国产精品vA| 亚洲精品无码久久毛片| 久久人人超碰精品CAOPOREN| 日本三级久久网| 国产精品久久午夜夜伦鲁鲁| 久久久久久久97| 久久精品国产精品亚洲精品| 久久精品亚洲精品国产欧美| 久久这里只有精品首页| 久久久久国产一区二区三区| 精品久久久久久久无码| 无码任你躁久久久久久久| 久久精品国产第一区二区三区| 99久久国产亚洲高清观看2024 | 精产国品久久一二三产区区别 | 精品久久久无码中文字幕天天| 国内精品久久久人妻中文字幕| 丁香色欲久久久久久综合网| 亚洲AV无码成人网站久久精品大| 久久精品国产第一区二区三区| 精品久久久久久久| 国产精品永久久久久久久久久| 久久精品国产一区二区| 精品一二三区久久aaa片| 国产精品99久久久久久人| 久久精品成人一区二区三区| 久久精品国产2020| 免费观看成人久久网免费观看| 久久久99精品一区二区| 亚洲精品国产美女久久久| 国产巨作麻豆欧美亚洲综合久久| 久久亚洲AV无码精品色午夜麻豆| 久久久久女人精品毛片| 久久婷婷五月综合色99啪ak| 成人妇女免费播放久久久|