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

做羞羞的事情网站做网站用什么语言数据库

做羞羞的事情网站,做网站用什么语言数据库,用php做高中数学题库网站,大学 英文网站建设正题 题目大意 nnn个点的一棵树#xff0c;每个节点有一个值valvalval和一个字符串SSS。对于每个点求∑x∈decp∑y∈decp(xy)(valxxorvaly)∗∣LCP(Sx,Sy)∣\sum_{x\in dec_p}\sum_{y\in dec_p(xy)}(val_x\ xor\ val_y)*|LCP(S_x,S_y)|x∈decp​∑​y∈decp​(xy)…正题 题目大意 nnn个点的一棵树每个节点有一个值valvalval和一个字符串SSS。对于每个点求∑x∈decp∑y∈decp(xy)(valxxorvaly)∗∣LCP(Sx,Sy)∣\sum_{x\in dec_p}\sum_{y\in dec_p(xy)}(val_x\ xor\ val_y)*|LCP(S_x,S_y)|x∈decp​∑​y∈decp​(xy)∑​(valx​ xor valy​)∗∣LCP(Sx​,Sy​)∣ decxdec_xdecx​表示xxx的子树。 解题思路 我们可以通过建立一棵TrieTrieTrie来查询一个字符串和一堆字符串的LCPLCPLCP和。那么我们发现这样每个子树的运输次数是该子树的字符串长度和。 所以我们可以根据字符串长度和来进行启发式合并然后按位用TrieTrieTrie统计答案即可。 时间复杂度O(nlog⁡nlog⁡ai)O(n\log n\log a_i)O(nlognlogai​) codecodecode #includecstdio #includecstring #includealgorithm #define ll long long using namespace std; const ll N5e510; struct node{ll to,next; }a[N*2]; ll n,tot,W,val[N],ls[N],l[N],s[N],pos[N]; ll siz[N],son[N],ans[N],out[N]; char st[N]; struct Trie{ll cnt,t[N][26],val[N];void Clear(){cnt1;memset(t[1],0,sizeof(t[1]));return;}void Insert(ll w){ll x1;for(ll i1;il[w];i){ll zs[pos[w]i];if(!t[x][z]){t[x][z]cnt;val[cnt]0;memset(t[cnt],0,sizeof(t[cnt]));}xt[x][z];val[x];}return;}ll Ask(ll w){ll x1,ans0;for(ll i1;il[w];i){ll zs[pos[w]i];if(!t[x][z])return ans;xt[x][z];ansval[x];}return ans;} }T1,T0; void addl(ll x,ll y){a[tot].toy;a[tot].nextls[x];ls[x]tot;return; } void dfs(ll x,ll fa){siz[x]l[x]1;for(ll ils[x];i;ia[i].next){ll ya[i].to;if(yfa)continue;dfs(y,x);siz[x]siz[y];if(siz[y]siz[son[x]])son[x]y;}return; } ll calcA(ll x,ll fa){ll ans(val[x]W)?T0.Ask(x):T1.Ask(x);for(ll ils[x];i;ia[i].next){ll ya[i].to;if(yfa)continue;anscalcA(y,x);}return ans; } void calcI(ll x,ll fa){(val[x]W)?T1.Insert(x):T0.Insert(x);for(ll ils[x];i;ia[i].next){ll ya[i].to;if(yfa)continue;calcI(y,x);}return; } void solve(ll x,ll fa,ll top){ans[x]0;for(ll ils[x];i;ia[i].next){ll ya[i].to;if(yfa||yson[x])continue;solve(y,x,y);ans[x]ans[y];}if(son[x])solve(son[x],x,top);ans[x]ans[son[x]];for(ll ils[x];i;ia[i].next)if(a[i].to!faa[i].to!son[x])ans[x]calcA(a[i].to,x),calcI(a[i].to,x);ans[x](val[x]W)?T0.Ask(x):T1.Ask(x);out[x]ans[x]*W;if(xtop)T0.Clear(),T1.Clear();else (val[x]W)?T1.Insert(x):T0.Insert(x);return; } int main() {freopen(tree.in,r,stdin);freopen(tree.out,w,stdout);scanf(%lld,n);for(ll i1;in;i)scanf(%lld,val[i]);for(ll i1;in;i){scanf(%s,st1);l[i]strlen(st1);for(ll j1;jl[i];j)s[pos[i]j]st[j]-a;pos[i1]pos[i]l[i];}for(ll i1;in;i){ll x,y;scanf(%lld%lld,x,y);addl(x,y);addl(y,x);}T1.Clear();T0.Clear(); dfs(1,0);for(W1;W1e5;W1)solve(1,1,1);for(ll i1;in;i)printf(%lld\n,out[i]); }
http://www.pierceye.com/news/558872/

相关文章:

  • h5自适应网站模板下载阿里云域名注册好了怎么做网站
  • 德州做网站多少钱网站实现搜索功能
  • 帝国cms7.0网站搬家换域名换空间等安装教程万网云虚拟主机上传网站
  • 网站建设推广接单语wordpress 所有文章
  • 申请域名后怎么做网站网站建设与维护中国出版社
  • 洛阳做网站那家好课程网站建设开题报告
  • 到哪里建网站商务网站建设学期总结
  • 铜陵app网站做营销招聘网站开发公司需要投入什么资源
  • 建购物的网站需要多少钱wordpress不显示头像
  • 如何做一个个人网站长春网站建设wang
  • 湖南省做网站的网站资讯建设
  • 滨江网站建设制作如何建设网站方便后期维护
  • dedecms手机网站插件wordpress模板中文
  • 网站建设合同封面模板下载天津专业网站设计
  • 毕业设计网站做几个2345浏览器网页版
  • 南阳市网站建设国家建设协会工程质量分会网站
  • 苗木网站开发需求自己做网站转发新闻违法么
  • 招商网站建设解决方案wordpress页面转移
  • 门户网站开发方案文档做网站切片
  • 中国房地产新闻关键词seo排名优化如何
  • 网站大型网页游戏上海装修公司排名统帅
  • hostinger建站wordpress互联网营销方案策划
  • 门户网站维护方案杭州网站建设公司哪家好
  • 深泽网站建设在wordpress加入文件管理器
  • 国外社交网站建设福州市工程建设质量管理网站
  • 建设网站怎样分配给用户空间做网站优化有什么方法
  • 做计算机网站有哪些内容nodejs做网站容易被攻击吗
  • 咖啡店网站模板免费图表制作网站
  • 织梦瀑布流网站模板爱站网关键词
  • 网站运营需要什么条件网站建设开发公司微信公众号开发