当前位置: 首页 > news >正文

中国工程建设招标网官方网站百度推广怎么做免费

中国工程建设招标网官方网站,百度推广怎么做免费,网站建设后的心得,网站建设推广哪里实惠http://acm.hust.edu.cn/vjudge/contest/view.action?cid105116#problem/E 题意:添加最少的括号,让每个括号都能匹配并输出 分析:dp[i][j]表示第i个到第j个需要添加的最少的括号,pos[i][j] k;表示i到j间第k个需要加括号&#xf…

http://acm.hust.edu.cn/vjudge/contest/view.action?cid=105116#problem/E

题意:添加最少的括号,让每个括号都能匹配并输出

分析:dp[i][j]表示第i个到第j个需要添加的最少的括号,pos[i][j] = k;表示i到j间第k个需要加括号;

如果str[i]和str[j]匹配,那么dp[i][j] = max(dp[i + 1][j - 1], dp[i][j]);

如果str[i]和str[j]不匹配,那么dp[i][j] = max(dp[i][j], dp[i][k]+dp[k + 1][j]);     i<= k < j;之前想过k为什么不能等于j,

 1 #include <iostream>
 2 #include <cstring>
 3 #include <algorithm>
 4 #include <cstdio>
 5 using namespace std;
 6 const int MAX = 120;
 7 const int INF = 0x3f3f3f3f;
 8 int dp[MAX][MAX],pos[MAX][MAX];
 9 char str[MAX];
10 int n;
11 void DP()
12 {
13     n = strlen(str);
14 
15     memset(dp, 0, sizeof(dp));
16     for(int i = 0; i < n; i++)
17         dp[i][i] = 1;
18     for(int p = 1; p < n; p++)
19     {
20         for(int i = 0; i < n; i++)
21         {
22             int j = i + p;
23             if(j >= n)
24                 break;
25             dp[i][j] = INF;
26             if( (str[i] == '(' && str[j] == ')') || ( str[i] == '[' && str[j] == ']' ) )
27             {
28                 if(dp[i][j] > dp[i + 1][j - 1])
29                     dp[i][j] = dp[i + 1][j - 1];
30             }
31             pos[i][j] = -1;
32             for(int k = i; k < j; k++)
33             {
34                 int temp = dp[i][k] + dp[k + 1][j];
35                 if(temp < dp[i][j])
36                 {
37                     dp[i][j] = temp;
38                     pos[i][j] = k;
39                 }
40             }
41         }
42     }
43 }
44 void Print(int beg, int End)
45 {
46     if(beg > End)
47         return;
48     if(beg == End)
49     {
50         if(str[beg] == '(' || str[beg] == ')')
51             printf("()");
52         if(str[beg] == '[' || str[beg] == ']')
53             printf("[]");
54     }
55     else
56     {
57         if(pos[beg][End] == -1)
58         {
59             printf("%c", str[beg]);
60             Print(beg + 1, End - 1);
61             printf("%c", str[End]);
62         }
63         else
64         {
65             Print(beg, pos[beg][End]);
66             Print(pos[beg][End] + 1, End);
67         }
68     }
69 }
70 int main()
71 {
72     int t;
73     scanf("%d", &t);
74     getchar();
75     getchar();
76     for(int i = 0; i < t; i++)
77     {
78         gets(str);
79         DP();
80         Print(0, n - 1);
81         printf("\n");
82         if(i < t - 1)
83             printf("\n");
84         getchar();
85     }
86 
87     return 0;
88 }
View Code

 

转载于:https://www.cnblogs.com/zhaopAC/p/5176040.html

http://www.lbrq.cn/news/2445427.html

相关文章:

  • 网站域名不合法什么是电商平台推广
  • 三亚可以做什么兼职乌海网站seo
  • 网站的建设需要数据库网站建设技术外包
  • wordpress静态加速seo优化专员招聘
  • 自己做的视频发什么网站吗线上引流线下推广方案
  • 注册网站的免费网址新闻类软文营销案例
  • wordpress怎么显示摘要网站页面优化方案
  • 软件定制公司值得去吗网站seo分析案例
  • 金蝶网站建设公司案例网站关键词排名优化方法
  • 网站建设分析游戏优化大师手机版
  • 带地板翻转的网站怎么做免费网页空间到哪申请
  • 自媒体网站建设要求seo站外优化平台
  • 手机网站建设哪家便宜网站建设策划书范文
  • 下班后做兼职任务网站站长工具流量统计
  • 网站建设wap客户引流的最快方法是什么
  • 昆明优化网站公司seo需要掌握哪些技术
  • 璧山集团网站建设如何注册一个平台
  • 仙桃市住房建设局网站竞价推广是什么意思
  • 想做个赚钱的网站不知道做那种山东seo百度推广
  • 创新的网站建站长沙营销型网站建设
  • 教做发绳的网站谷歌搜索引擎入口2022
  • 结合七牛云 做视频网站怎么做网站关键词优化
  • 网络技术与网站建设友情链接交换要注意哪些问题
  • 晋州网站建设公司网站设计
  • 网站备案服务产品推广策划书
  • 莘庄做网站直播营销
  • 宁德营销型网站建设网络营销的推广方法有哪些
  • 保定网站建设服务平台给我免费的视频在线观看
  • 凡科网站免费注册自己有产品怎么网络销售
  • 做淘宝客需要企业网站吗广告公司接单软件
  • C++ TAP(基于任务的异步编程模式)
  • 「iOS」————继承链与对象的结构
  • MySQL 8.0 OCP 1Z0-908 题目解析(37)
  • 【愚公系列】《MIoT.VC》003-构建基本仿真工作站(组件的属性、行为、视频展示)
  • 【MySQL】深入浅出事务:保证数据一致性的核心武器
  • 【大模型实战】提示工程(Prompt Engineering)