青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

A Za, A Za, Fighting...

堅信:勤能補拙

PKU 1179 Polygon

問題:
http://acm.pku.edu.cn/JudgeOnline/problem?id=1179

思路:
這題輸在了對原題目的理解和分析上,沒能成功地走出第一步:
                                                      將原題解析成對于表達式的求解
把缺了一條邊的多邊形展開成直線就是一個表達式
注意:為了求乘法,必須同時保存最大值和最小值

f[i][j]記錄表達式中從頂點i到頂點j這段子表達式的值

動態規劃的思想類似于矩陣連乘

參考:
http://hi.baidu.com/xiehuixb/blog/item/575ec81e221466c1a786699e.html

代碼:
 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 #include<string.h>
 4 #define MAX_LEN 51
 5 #define INF 9223372036854775807LL
 6 #define maximal(a, b) ((a)>(b) ? (a) : (b))
 7 #define minimal(a, b) ((a)<(b) ? (a) : (b))
 8 char operand[MAX_LEN][2];
 9 int operators[MAX_LEN];
10 int n, ans_len, ans[MAX_LEN];
11 long long int rt, max[MAX_LEN][MAX_LEN], min[MAX_LEN][MAX_LEN];
12 
13 /*
14  * when it comes to: '+'
15  * max[i][j] = maximal(max[i][k] + max[k+1][j])
16  * min[i][j] = minimal(min[i][k] + min[k+1][j])
17  *
18  * when it comes to: '*'
19  * max[i][j] = maximal(max[i][k]*max[k+1][j], max[i][k]*min[k+1][j], min[i][k]*max[k+1][j], min[i][k]*min[k+1][j])
20  * min[i][j] = minimal(max[i][k]*max[k+1][j], max[i][k]*min[k+1][j], min[i][k]*max[k+1][j], min[i][k]*min[k+1][j])
21  *
22  * i<=k<j
23  */
24 void
25 solve(char *opd, int *ops, int del_edge)
26 {
27     int i, j, k, len;
28     for(i=1; i<=n; i++)
29         max[i][i] = min[i][i] = ops[i];
30     for(len=2; len<=n; len++) {
31         for(i=1; i<=n-len+1; i++) {
32             j = i+len-1;
33             max[i][j] = -INF;
34             min[i][j] = INF;
35             for(k=i; k<j; k++) {
36                 if(opd[k] == 't') {
37                     max[i][j] = maximal(max[i][j], max[i][k]+max[k+1][j]);
38                     min[i][j] = minimal(min[i][j], min[i][k]+min[k+1][j]);
39                 } else { /* opd[k] == 'x' */
40                     max[i][j] = maximal(max[i][j], max[i][k]*max[k+1][j]);
41                     max[i][j] = maximal(max[i][j], max[i][k]*min[k+1][j]);
42                     max[i][j] = maximal(max[i][j], min[i][k]*max[k+1][j]);
43                     max[i][j] = maximal(max[i][j], min[i][k]*min[k+1][j]);
44 
45                     min[i][j] = minimal(min[i][j], max[i][k]*max[k+1][j]);
46                     min[i][j] = minimal(min[i][j], max[i][k]*min[k+1][j]);
47                     min[i][j] = minimal(min[i][j], min[i][k]*max[k+1][j]);
48                     min[i][j] = minimal(min[i][j], min[i][k]*min[k+1][j]);
49                 }
50             }
51         }
52     }
53     if(max[1][n] >= rt) {
54         if(max[1][n] == rt)
55             ans[ans_len++= del_edge;
56         else {
57             rt = max[1][n];
58             ans_len = 0;
59             ans[ans_len++= del_edge;
60         }
61     }
62 }
63 
64 int
65 main(int argc, char **argv)
66 {
67     int i, j, k;
68     char tmpopd[MAX_LEN];
69     int tmpops[MAX_LEN];
70     while(scanf("%d"&n) != EOF) {
71         for(i=1; i<=n; i++)
72             scanf("%s%d", operand[i], operators+i);
73         rt = -INF;
74         ans_len = 0;
75         for(i=1; i<=n; i++) {
76             for(j=i%n+1, k=1; j!=i; j=j%n+1, k++)
77                 tmpopd[k] = operand[j][0];
78             tmpopd[k] = '\0';
79             tmpops[1= operators[i];
80             for(j=i%n+1, k=2; j!=i; j=j%n+1, k++)
81                 tmpops[k] = operators[j];
82             solve(tmpopd, tmpops, i);
83         }
84         printf("%lld\n", rt);
85         for(i=0; i<ans_len; i++)
86             printf("%d ", ans[i]);
87         printf("\n");
88     }
89 }

posted on 2010-08-17 13:51 simplyzhao 閱讀(164) 評論(0)  編輯 收藏 引用 所屬分類: C_動態規劃

導航

<2010年8月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
2930311234

統計

常用鏈接

留言簿(1)

隨筆分類

隨筆檔案

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            久久久久亚洲综合| 亚洲精选91| 免费成人美女女| 亚洲欧美中文日韩v在线观看| 国产一区二区三区电影在线观看 | 欧美精品成人| 日韩午夜视频在线观看| 久久国产免费看| 久久久另类综合| 欧美大片国产精品| 老**午夜毛片一区二区三区| 午夜精品久久99蜜桃的功能介绍| 亚洲国产黄色| 国产日韩欧美在线播放| 欧美日韩视频在线| 欧美阿v一级看视频| 麻豆久久精品| 亚洲综合欧美日韩| 一区二区三区四区五区精品视频| 亚洲一区二区在线视频| 欧美在线免费看| 午夜精品久久久久99热蜜桃导演| 亚洲在线一区| 久久性天堂网| 亚洲动漫精品| 欧美va亚洲va日韩∨a综合色| 欧美日韩免费观看一区| 国产精品一区二区a| 黄色在线成人| 亚洲视频自拍偷拍| 亚洲综合色自拍一区| 亚洲三级电影在线观看| 亚洲在线一区二区三区| 欧美在线观看一区二区| 久久久999精品| 老鸭窝毛片一区二区三区| 久久久久久黄| 一区在线视频| 亚洲欧美资源在线| 一本久道久久综合婷婷鲸鱼| 欧美一进一出视频| 欧美日韩国产123区| 欧美午夜a级限制福利片| 影音国产精品| 久久精品久久99精品久久| 亚洲精品免费一二三区| 欧美屁股在线| 91久久精品美女| 亚洲欧洲在线视频| 欧美日本二区| 中日韩高清电影网| 9人人澡人人爽人人精品| 欧美一区二区免费观在线| 欧美日韩一二区| 久久精品网址| 免费久久精品视频| 欧美福利电影在线观看| **网站欧美大片在线观看| 午夜视频精品| 亚洲一区在线播放| 伊人久久成人| 最新国产拍偷乱拍精品| 欧美另类99xxxxx| 亚洲人www| 亚洲午夜国产成人av电影男同| 欧美日韩精品一区| 亚洲免费视频成人| 欧美国产日本| 久久久www成人免费无遮挡大片| 久久人人97超碰精品888| 亚洲全部视频| 欧美国产日韩免费| 亚洲电影免费在线观看| 欧美日韩国产精品专区| 久久一区中文字幕| 国产精品九九久久久久久久| 欧美 日韩 国产在线| 好看不卡的中文字幕| 一本久久综合亚洲鲁鲁| 在线播放日韩专区| 亚洲日本一区二区| 亚洲人成小说网站色在线| 性欧美videos另类喷潮| 中文久久乱码一区二区| 美女在线一区二区| 亚洲视频在线观看三级| 国产精品一区二区在线观看| 亚洲另类在线视频| 亚洲欧美在线一区二区| 欧美日韩一二三区| 欧美在线观看视频一区二区| 亚洲欧美变态国产另类| 亚洲在线日韩| 亚洲国产精品尤物yw在线观看| 欧美一区二区高清在线观看| 欧美在线观看一区| 免费欧美网站| 亚洲一区在线播放| 最新日韩中文字幕| 日韩一级在线观看| 国产精品久久久久久久久久免费看 | 久久福利电影| 国产亚洲欧美一区| 老司机亚洲精品| 亚洲视频视频在线| 欧美福利在线观看| 久久久久久久国产| 亚洲无吗在线| 日韩午夜精品| 在线观看欧美黄色| 国产农村妇女毛片精品久久麻豆| 欧美一级精品大片| 亚洲精品一区二区三| 美腿丝袜亚洲色图| 久久九九有精品国产23| 欧美一区二区免费观在线| 99pao成人国产永久免费视频| 国产日产精品一区二区三区四区的观看方式 | 欧美系列亚洲系列| 欧美日韩在线精品一区二区三区| 国产欧美日韩91| 久久视频这里只有精品| 美女图片一区二区| 久久久99国产精品免费| 国产精品久久久久久av下载红粉| 亚洲国产精品久久久久秋霞蜜臀| 亚洲黄色精品| 欧美日韩精品国产| 欧美日韩国产首页在线观看| 欧美va天堂va视频va在线| 亚洲伦理在线免费看| 亚洲欧洲精品成人久久奇米网| 欧美一区二区三区的| 亚洲综合另类| 亚洲调教视频在线观看| 亚洲欧美卡通另类91av | 欧美—级高清免费播放| 亚洲午夜女主播在线直播| 亚洲国语精品自产拍在线观看| 国产精品二区三区四区| 国产日韩在线视频| 影音国产精品| 久久久久久97三级| 亚洲欧美区自拍先锋| 久久成人av少妇免费| 欧美精选在线| 在线观看国产精品网站| 久久精品视频一| 午夜精品久久久久久久白皮肤 | 欧美日韩天天操| 一区二区在线观看视频在线观看| 欧美一区二区三区另类| 欧美亚洲一级片| 亚洲在线免费| 国产在线观看精品一区二区三区 | 久久国产黑丝| 亚洲裸体俱乐部裸体舞表演av| 99热免费精品| 欧美国产第二页| 亚洲国产精品第一区二区三区| 亚洲欧美视频在线| 亚洲一区欧美| 国产精品入口尤物| 亚洲午夜视频在线观看| 99re6这里只有精品视频在线观看| 久久免费99精品久久久久久| 亚洲高清不卡| 夜夜嗨一区二区| 国产精品二区二区三区| 久久精品一区二区三区不卡| 欧美在线播放一区| 1024日韩| 日韩视频免费大全中文字幕| 欧美日韩在线三级| 久久久久久久一区二区三区| 久久久综合激的五月天| 一本色道久久99精品综合 | 国产精品视频免费观看www| 亚洲欧美日韩国产成人| 久久国产色av| 香蕉久久夜色精品| 欧美日韩一区在线播放| 亚洲福利专区| 国产欧美日韩一区二区三区| 欧美成人中文字幕| 国产日韩欧美在线一区| 亚洲精品国久久99热| 一区在线观看视频| 亚洲一区二区三区在线| 在线视频你懂得一区| 美女精品一区| 亚洲精品视频免费| 亚洲九九九在线观看| 久久久久久久网| 国产精品激情| 亚洲一区二区三区免费视频| 亚洲青涩在线| 欧美日韩国产探花| 亚洲欧美日韩在线| 久久婷婷久久一区二区三区|