• <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>

            糯米

            TI DaVinci, gstreamer, ffmpeg
            隨筆 - 167, 文章 - 0, 評論 - 47, 引用 - 0
            數據加載中……

            POJ 1080 Human Gene Functions 動態規劃

            思路:

            由于上下都可以加空格,這個有點崩潰。
            但后來發現還是可以用動態規劃做的。
            假設輸入的字符串分別為 A,B
            f[i][j] = { 從 A[i] 和 B[j] 開始匹配,所能達到的最大值 }
            假設 A[i] = G,B[j] = C
            那么現在的情況就是
            Gxxxxx
            Cxxxxx
            狀態轉移為
            => f[i + 1][j] + table(A[i], '-')
            G...
            -C..

            => f[i][j + 1] + table(B[j], '-')
            -G..
            C...

            => f[i + 1][j + 1] + table(A[i], B[j])
            G...
            C...

            可以用滾動數組。

            所以這樣就解決了,覺得很神奇。

            #include <stdio.h>

            int N, M, f[2][256], *pre, *cur;
            char A[256], B[256], map[256];
            int tbl[5][5= {
                
            5-1-2-1-3},
                
            {-1,  5-3-2-4},
                
            {-2-3,  5-2-2},
                
            {-1-2-2,  5-1},
                
            {-3-4-2-1,  0},
            }
            ;

            inline 
            void swap(int **a, int **b)
            {
                
            int *= *a;
                
            *= *b;
                
            *= t;
            }


            inline 
            int max(int a, int b)
            {
                
            return a > b ? a : b;
            }


            inline 
            int min(int a, int b)
            {
                
            return a < b ? a : b;
            }


            inline 
            int dif(char a, char b)
            {
                
            return tbl[map[a]][map[b]];
            }


            int main()
            {
                
            int t, i, j;
                
                freopen(
            "e:\\test\\in.txt""r", stdin);

                map[
            'A'= 0;
                map[
            'C'= 1;
                map[
            'G'= 2;
                map[
            'T'= 3;
                map[
            '-'= 4;
             
                scanf(
            "%d"&t);
                
            while (t--{
                    scanf(
            "%d%s%d%s"&N, &A[1], &M, &B[1]);            
                    pre 
            = &f[0][0];
                    cur 
            = &f[1][0];
                    cur[
            0= 0;
                    
            for (i = 1; i <= M; i++)
                        cur[i] 
            = dif(B[i], '-'+ cur[i - 1];
                    
            for (i = 1; i <= N; i++{
                        swap(
            &pre, &cur);
                        cur[
            0= dif(A[i], '-'+ pre[0];
                        
            for (j = 1; j <= M; j++{
                            cur[j] 
            = dif(A[i], B[j]) + pre[j - 1];
                            cur[j] 
            = max(cur[j], dif(A[i], '-'+ pre[j]);
                            cur[j] 
            = max(cur[j], dif(B[j], '-'+ cur[j - 1]);
                        }

                    }

                    printf(
            "%d\n", cur[M]);
                }

            }

            posted on 2010-04-21 21:41 糯米 閱讀(386) 評論(0)  編輯 收藏 引用 所屬分類: POJ

            久久精品国产免费| 97精品伊人久久久大香线蕉 | 国产成人精品免费久久久久| 久久久久99精品成人片直播| 亚洲狠狠综合久久| 国产成人综合久久精品红| 久久夜色精品国产网站| 久久久久久国产a免费观看不卡 | 久久精品国产亚洲av麻豆小说| 99久久亚洲综合精品成人| 色播久久人人爽人人爽人人片AV| 久久99精品久久久久久动态图| 香蕉久久永久视频| 青草影院天堂男人久久| 亚洲AV日韩AV天堂久久| 色婷婷综合久久久久中文字幕| 久久久久夜夜夜精品国产| A级毛片无码久久精品免费| 久久精品国产精品亚洲下载| 国产精品久久网| 久久男人Av资源网站无码软件| 青春久久| 久久久久人妻一区精品| 93精91精品国产综合久久香蕉| 国产精品久久久久久久久| 亚洲综合熟女久久久30p| 蜜桃麻豆www久久国产精品| 国产—久久香蕉国产线看观看 | 93精91精品国产综合久久香蕉 | 97精品伊人久久久大香线蕉| 国产精品99久久免费观看| 亚洲国产精品成人久久| 一级A毛片免费观看久久精品| 一级做a爰片久久毛片人呢| 久久香蕉一级毛片| 久久精品免费观看| 欧美777精品久久久久网| 精品综合久久久久久97超人| 精品久久777| 色综合合久久天天综合绕视看| 久久国产成人精品麻豆|