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

网站建设费属于服务类么wordpress 免费中文企业主题

网站建设费属于服务类么,wordpress 免费中文企业主题,怎么下载网站页面,深圳夫博网站建设有限公司Display Substring 题意#xff1a; 一个长度为n的字符串#xff0c;每个字符有自己的价值#xff0c;求第k小价值的不重复子串价值 题解#xff1a; 首先众所周知#xff0c;所有子串都可以用后缀的前缀来表示#xff0c;这就和后缀数组扯上关系了 我们可以直接二分…Display Substring 题意 一个长度为n的字符串每个字符有自己的价值求第k小价值的不重复子串价值 题解 首先众所周知所有子串都可以用后缀的前缀来表示这就和后缀数组扯上关系了 我们可以直接二分这个价值val然后去算大于val的不重复子串有多少个(比如有x个)如果x大于k说明该价值的情况下存在第k小价值那r可以缩小否则l可以增大这是二分过程 那如果计算大于val的不重复子串有多少个遍历后缀数组对于每个后缀如果其越长说明其价值越高,符合单调性所有我们二分(没错二分套二分)二分找到价值小于等于val的值的前缀有多少个再减去重复部分看是否大于k如果大于第一个二分就返回true 重复部分就是height数组对应的值通过这题可以知道P2408 不同子串个数 注意height要和后缀二分出来的距离取min因为要删除重复部分不能比这个字符串的长度还长 代码 // Problem: Display Substring // Contest: HDOJ // URL: https://acm.hdu.edu.cn/showproblem.php?pid6988 // Memory Limit: 262 MB // Time Limit: 8000 ms // Data:2021-08-22 17:57:49 // By Jozky#include bits/stdc.h #include unordered_map #define debug(a, b) printf(%s %d\n, a, b); using namespace std; typedef long long ll; typedef unsigned long long ull; typedef pairint, int PII; clock_t startTime, endTime; //Fe~Jozky const ll INF_ll 1e18; const int INF_int 0x3f3f3f3f; void read(){}; template typename _Tp, typename... _Tps void read(_Tp x, _Tps... Ar) {x 0;char c getchar();bool flag 0;while (c 0 || c 9)flag| (c -), c getchar();while (c 0 c 9)x (x 3) (x 1) (c ^ 48), c getchar();if (flag)x -x;read(Ar...); } template typename T inline void write(T x) {if (x 0) {x ~(x - 1);putchar(-);}if (x 9)write(x / 10);putchar(x % 10 0); } void rd_test() { #ifdef LOCALstartTime clock();freopen(in.txt, r, stdin); #endif } void Time_test() { #ifdef LOCALendTime clock();printf(\nRun Time:%lfs\n, (double)(endTime - startTime) / CLOCKS_PER_SEC); #endif } const int MAXN 3e5;char ch[MAXN], all[MAXN]; int sa[MAXN], rk[MAXN], height[MAXN], tax[MAXN], tp[MAXN], a[MAXN], n, m; char str[MAXN]; //rk[i] 第i个后缀的排名; sa[i] 排名为i的后缀位置; height[i] 排名为i的后缀与排名为(i-1)的后缀的LCP //tax[i] 计数排序辅助数组; tp[i] rk的辅助数组(计数排序中的第二关键字),与sa意义一样。 //a为原串 void RSort() {//rk第一关键字,tp第二关键字。for (int i 0; i m; i)tax[i] 0;for (int i 1; i n; i)tax[rk[tp[i]]];for (int i 1; i m; i)tax[i] tax[i - 1];for (int i n; i 1; i--)sa[tax[rk[tp[i]]]--] tp[i]; //确保满足第一关键字的同时再满足第二关键字的要求 } //计数排序,把新的二元组排序。int cmp(int* f, int x, int y, int w) {return f[x] f[y] f[x w] f[y w]; } //通过二元组两个下标的比较确定两个子串是否相同void Suffix() {//safor (int i 1; i n; i)rk[i] a[i], tp[i] i;m 127, RSort(); //一开始是以单个字符为单位所以(m 127)for (int w 1, p 1, i; p n; w w, m p) { //把子串长度翻倍,更新rk//w 当前一个子串的长度; m 当前离散后的排名种类数//当前的tp(第二关键字)可直接由上一次的sa的得到for (p 0, i n - w 1; i n; i)tp[p] i; //长度越界,第二关键字为0for (i 1; i n; i)if (sa[i] w)tp[p] sa[i] - w;//更新sa值,并用tp暂时存下上一轮的rk(用于cmp比较)RSort(), swap(rk, tp), rk[sa[1]] p 1;//用已经完成的sa来更新与它互逆的rk,并离散rkfor (i 2; i n; i)rk[sa[i]] cmp(tp, sa[i], sa[i - 1], w) ? p : p;}//离散把相等的字符串的rk设为相同。//LCPint j, k 0;for (int i 1; i n; height[rk[i]] k)for (k k ? k - 1 : k, j sa[rk[i] - 1]; a[i k] a[j k]; k);//这个知道原理后就比较好理解程序 } ll k; ll sum[MAXN]; ll val[MAXN]; inline void clear() {memset(tax, 0, sizeof(tax));memset(sa, 0, sizeof(int) * (n 1));memset(height, 0, sizeof(int) * (n 1));memset(rk, 0, sizeof(int) * (n 1));memset(sum, 0, sizeof(int) * (n 1));memset(tp, 0, sizeof(int) * (n 1));memset(a, 0, sizeof(int) * (n 1)); }void Init() {scanf(%d%lld, n, k);scanf(%s, str 1);for (int i 1; i n; i)a[i] str[i];// cout (str 1) endl;for (int i 1; i 26; i)read(val[i]);for (int i 1; i n; i)sum[i] sum[i - 1] val[str[i] - a 1]; } bool check(int x) {ll ans 0;for (int i 1; i n; i) {int l sa[i], r n;while (l r) {int mid (l r 1) 1;if (sum[mid] - sum[sa[i] - 1] x)l mid;elser mid - 1;}if (sum[l] - sum[sa[i] - 1] x) {ans l - sa[i] 1;ans- min(height[i], l - sa[i] 1);}}return ans k; } int main() {//rd_test();int t;read(t);while (t--) {clear();Init();Suffix();int l 1, r 0;for (int i 1; i n; i)r val[str[i] - a 1];// cout r r endl;while (l r) {int mid (l r) 1;if (check(mid))r mid;elsel mid 1;}if (!check(l))l -1;printf(%d\n, l);}//Time_test(); }
http://www.pierceye.com/news/870625/

相关文章:

  • 书店网站开发目的和意义深圳网建公司
  • 餐饮网站方案wordpress 微论坛主题
  • 上海建筑网站设计多用户商城数据库设计
  • 网站做301将重定向到新域名深圳seo优化外包公司
  • 做视频导航网站有哪些天津西青区离哪个火车站近
  • 福州网站建设技术支持公司培训课程有哪些
  • 保定网站制作域名注册商查询
  • 医院网站建设公司价格低天津建设工程信息网 塘沽一中
  • 建设机械网站案例建国外网站需要多少钱
  • 比特币简易网站开发电商网站大全
  • 秀屿区建设局网站巨量广告投放平台
  • 合肥网站设计哪家公司好北京国贸网站建设公司
  • 帮人做网站怎么收费制作链接的app的软件有哪些
  • 商贸行业网站建设公司yoast wordpress seo
  • 上小学网站建设WordPress底部添加运行时间
  • 学校网站信息化建设工作心得网络营销现状分析
  • 藁城专业网站建设班级同学录网站建设
  • 北京手机网站开发公司wordpress用户列表
  • 上海 企业网站制成都营销型网站建设熊掌号
  • 无锡网站优化哪家好北京注册公司地址可以是住宅吗
  • 中国十大热门网站深圳哪做网站
  • 木渎网站建设聚美优品网站建设情况
  • 企业形象网站用什么语言开发网站优化要做哪些工作
  • 中国建设银行官网站电话号码wordpress关键词排名
  • 南通网站建设机构博物馆网站建设的根本意义
  • 食品企业网站建设中信建设有限责任公司陈晓佳
  • 中国网站服务器哪个好店名注册查询
  • 网站设计制作案例软件定制开发的发展前景
  • 中国联通网站备案小程序是什么原理
  • 企业网站建设御彩云dz做电影网站