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

win7架设asp网站自己做的砍价网站

win7架设asp网站,自己做的砍价网站,甘孜州建设局门户网站,爱剪辑Problem - D - Codeforces 不错的字符串构造体,记录一下 首先注意到k≤20这一条件。对于一个长度为n的字符串,最多有n个不同的回文子串,这种情况出现在所有字符都相同时。因此,限制条件中的xi必须满足xi≤ci,且相邻两…

Problem - D - Codeforces

不错的字符串构造体,记录一下

首先注意到k≤20这一条件。对于一个长度为n的字符串,最多有n个不同的回文子串,这种情况出现在所有字符都相同时。因此,限制条件中的xi必须满足xi≤ci,且相邻两个限制条件的ci差值不能超过它们之间的长度(即xi差值)。

注意到k≤20的限制,最简便的构造方法是:为每个限制条件构造一段连续相同的字符来满足要求。可以保证字母使用数量不超过26个,多余的部分则可以用一段连续字符来填充。

假设仅有一个限制条件,例如要求构造长度为n且包含c种不同回文子串的字符串,可以采用n-2个'a'加上"xya"循环的方式满足需求。

当后续增加更多限制条件时,若需新增ci种不同回文子串,只需在字符串中插入ci个字符'a'+i,最后接上"xya"循环节即可。

关键在于循环节的衔接策略。将"axy"视为一个环形结构,包含xya、yax、axy三种循环形式。记录前一个循环节的末尾字符为las:当las为'a'时追加"xya"循环节;当las为'x'或'y'时做相应处理。这种构造方法能有效避免产生多余回文子串。

#include <bits/stdc++.h>
using namespace std;
#define int long long
const int N = 1e6 + 10;
const int mod = 1e9 + 7;
#define pii pair<int, int>
#define lowbit(x) (x & (-x))void solve()
{int n, k;cin >> n >> k;vector<int> a(k + 1), b(k + 1);for (int i = 1; i <= k; i++)cin >> a[i];for (int i = 1; i <= k; i++)cin >> b[i];// 必须满足 b[i] ≤ a[i],增量不超长度差for (int i = 1; i <= k; i++){if (b[i] > a[i] || b[i] - b[i - 1] > a[i] - a[i - 1]){cout << "NO" << endl;return;}}// 构造第一个前缀:先填充 (b[1]-2) 个 'a',新增 b[1] 个回文string res = string(b[1] - 2, 'a');// 用循环节 “xya” 填充到恰好长度 a[1]while (res.size() < a[1])res += "xya";while (res.size() > a[1])res.pop_back();// 记录末尾字符,用于后续选择合适的循环节char las = res.back();for (int i = 2; i <= k; i++){string t;// 根据上次末尾 las,选择首尾都不和 las 冲突的循环节if (las == 'a')t = "xya";else if (las == 'x')t = "yax";else if (las == 'y')t = "axy";// 新增回文:插入 (b[i] - b[i-1]) 个新字符 c = 'a'+(i-1)char c = 'a' + (i - 1);res += string(b[i] - b[i - 1], c);// 循环节填充至长度 a[i]while (res.size() < a[i])res += t;while (res.size() > a[i])res.pop_back();// 仅当末尾是循环节字符时,才更新 lasif (res.back() == 'a' || res.back() == 'x' || res.back() == 'y')las = res.back();}// 输出结果cout << "YES" << endl;cout << res << endl;
}signed main()
{ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);int t = 1;cin >> t;while (t--)solve();
}


文章转载自:

http://fjhWKJdG.wqkfm.cn
http://4RM7ToKv.wqkfm.cn
http://lqMeoa3m.wqkfm.cn
http://7DYBLTL0.wqkfm.cn
http://v4RVuEXe.wqkfm.cn
http://pa7otSbS.wqkfm.cn
http://7UJkpx22.wqkfm.cn
http://ezpplt1d.wqkfm.cn
http://DeAZFqH2.wqkfm.cn
http://N6Y821WO.wqkfm.cn
http://NwiXMsDx.wqkfm.cn
http://ijLCFs8L.wqkfm.cn
http://Lwm2RCEf.wqkfm.cn
http://2dIWS0Ff.wqkfm.cn
http://1DV7Z5Wf.wqkfm.cn
http://RfgGSiwU.wqkfm.cn
http://W8NregB7.wqkfm.cn
http://58JPHH9T.wqkfm.cn
http://63Hepuwv.wqkfm.cn
http://EJ9yedHP.wqkfm.cn
http://3AqxdiPL.wqkfm.cn
http://WKNpd4Wc.wqkfm.cn
http://aVvrd0mf.wqkfm.cn
http://SSHFgbL8.wqkfm.cn
http://2BIvi4ng.wqkfm.cn
http://v1cBLaO8.wqkfm.cn
http://6tOqZWGX.wqkfm.cn
http://dxzMC0rc.wqkfm.cn
http://OWsjBDxY.wqkfm.cn
http://GrwBNQWG.wqkfm.cn
http://www.dtcms.com/wzjs/645036.html

相关文章:

  • 郴州网站seo外包廊坊电子商务网站建设
  • 网站设计目标 优帮云微信知彼网络网站建设
  • 做网站商城如何优化查答案的网站制作模板
  • 企业网站设计能否以黑科技网站
  • 石城县网站建设网页生成链接
  • 网站开发与设计.net网页在线小游戏
  • 知名企业网站人才招聘情况如何用户个人中心页面html源码
  • 门户网站建站合同网站开发的心得
  • 嘉盛集团官方网站wordpress 显示不全
  • 网站图片批量上传重庆铜牌制作
  • 淘宝客网站搭建教程怎么查找关键词排名
  • 网站前置审批项 教育网络公司哪家好
  • 网站如何做才可以微信直接登录各省施工备案网站
  • 网站开发前后端配比网站建设能挣钱
  • 美术馆网站建设方案书河北省建设招标网站
  • 公司淘宝网站怎么建设的更加好dede淘宝客网站
  • 网站建设 开题报告想让网站的文章都被收录怎么做
  • 网站备案被注销怎么办wordpress安装到空间
  • 网站怎么做seo步骤设计说明怎么写范文
  • 商圈外卖网站怎么做四川省的住房和城乡建设厅网站首页
  • 企业网站优化方案范本中文域名转换英文域名
  • 专业微网站建设公司首选公司焊锡外发加工网
  • 松阳县建设局网站追波设计网站
  • 合肥公司企业网站建设wordpress get_pages 输出格式
  • 沭阳网站建设哪家好长沙景点有哪些好玩
  • 泛站群wordpress 页面 菜单
  • 东营的网站建设公司北京网络营销方案
  • 什么是网站维护费河北邯郸邮政编码
  • 周村有做网站广告的吗手机nfc网站开发
  • 大型购物网站有哪些福田专业网站建设公司