AtCoder Beginner Contest 264 G.String Fair(最短路/暴力dp 补写法)
创始人
2024-02-19 22:34:32
0

题目

n(n<=18278)个串,第i个串Ti(Ti为纯小写字母串且长度不超过3),

得分Pi(-1e9<=Pi<=1e9),表示只要子串中出现一次Ti,就会获得Pi的得分

对于你可以构造的无限长的串S来说,S的最终得分,为其中每一个串出现次数*其得分之和

\large \sum_{i=1}^{n}cnt[i]*P[i],cnt[i]为S中与Pi相同的子串的个数

要求输出你可以构造出的非空S串的最大得分,无需输出S

特别地,如果S可以无穷大,输出Infinity

思路来源

AtCoder Beginner Contest 264 - _Backl1ght - 博客园

poj2949 Word Rings(图论/spfa判正环 最大平均环)_Code92007的博客-CSDN博客

题解

18278=26+26*26+26*26*26

赛中暴力dp艹过去了,

dp[i][j][k]表示当前串长为i最后一个字母是j倒数第二个字母是k的最大收益,

暴力跑个2000轮,比较2000时的前缀最大值和1000时的前缀最大值,

若2000更大,说明可以到无穷,输出Infinity,否则输出前缀最大值

赛后学习一下别人的写法,

其实主要思路就是把dp的后两维变成图上的点,从而转换为最短路

Infinity即对应图上有正环的情形,spfa判环即可

这种相邻状态的转移,之前在欧拉回路(太鼓达人)的题里面也见过,典中典

例如从倒数第二个字母a,倒数第一个字母b,

转移到倒数第二个字母b,倒数第一个字母c的时候,

即视为状态从ab转移到了bc,

没有字母的初始状态可以视为##,而有一个字母的状态可以视为#x

这样状态是不超过27*27的,这700多个点的图上,最多18278条边,

O(n*m)跑BellmanFord/SPFA即可

代码

#include
using namespace std;
#define fi first
#define se second
typedef long long ll;
typedef pair P;
const int N=27*27,M=N*27;
int n,u,v,w,cnt[N];
ll dis[N],a[M],mx;
string s;
bool vis[N];
int f(string x){int n=x.size(),ans=0;for(int i=0;iq;vis[s]=cnt[s]=1;dis[s]=0;q.push(s);while(!q.empty()){int u=q.front();q.pop();if(u!=s)mx=max(mx,dis[u]);//非空vis[u]=0;for(int i=1;i<=26;++i){int nu=u*27+i,v=nu%N;//## -> #a -> abll w=a[i]+(v/27?a[v]:0)+(nu/N?a[nu]:0);//第一个字母是#的,一定不包含代价if(dis[v]N)return 1;if(!vis[v]){q.push(v);vis[v]=1;}}}}return 0; 
}
int main(){cin>>n;for(int i=1;i<=n;++i){cin>>s>>w;int m=s.size();a[f(s)]=w;}if(spfa(f("##")))cout<<"Infinity"<

相关内容

热门资讯

万圣节朋友圈必备简短文案 万圣节朋友圈必备简短文案  在日常学习、工作或生活中,越来越多人会在闲暇时发表文案,文案用以展现自己...
母亲节发朋友圈的文案 关于母亲节发朋友圈的文案(精选390句)  随着社交平台的兴起,越来越多人青睐于在社交平台上发表文案...
萝岗区及黄埔区公交线网规划方... 萝岗区及黄埔区公交线网规划方案起止点经行路段萝岗演艺中心-联和开创大道、香雪路、水西路、开创大道、广...
天津工程职业技术学院就业质量... 天津工程职业技术学院就业质量年度报告  一、学院概况  天津工程职业技术学院是一所以工科为主的全日制...
酒店圣诞晚会活动策划方案 酒店圣诞晚会活动策划方案  为了确保事情或工作能无误进行,预先制定方案是必不可少的,方案的内容多是上...
商务谈判策划书 商务谈判策划书  一、什么是策划书  策划书即对某个未来的活动或者事件进行策划,并展现给读者的文本;...
新生迎新策划方案 2021新生迎新策划方案范文  为了确保我们的努力取得实效,时常需要预先开展方案准备工作,方案是从目...
有创意的生日策划方案 有创意的生日策划方案大全(通用8篇)  生日活动的举办,可以促进公司职员工的内部凝聚力和亲和力,加强...
大学生村官工作总结报告 2018年大学生村官工作总结报告范文  从20xx年11月16日来龙阳镇店子村工作,不觉间已过一月之...
实训报告 实训报告范文合集(通用12篇)  实训报告是指包含实训目的、实训环境、实训原理、实训过程、实训结果、...
自我成长的分析报告 自我成长的分析报告(精选11篇)  在现在社会,报告使用的频率越来越高,不同的报告内容同样也是不同的...
企业账户服务自查报告 企业账户服务自查报告范文  时间稍纵即逝,辛苦的工作已经告一段落了,回顾这一段时间存在的工作问题,是...
对员工工作评价 对员工工作评价范文对员工工作评价范文1对员工工作评价范文1.普通员工(不是太聪明)2.格外出色(目前...
青少年心理健康现状调查报告 青少年心理健康现状调查报告(通用16篇)  当想知道某一情况、某一事件的来龙去脉时,我们有必要弄明白...
市场分析报告怎么写 市场分析报告怎么写3篇  在现实生活中,报告使用的次数愈发增长,报告具有成文事后性的特点。写起报告来...
超市临时工社会实践报告 超市临时工社会实践报告  在寒暑假的时候有很多的学生都会在超市开展社会实践,那么超市社会实践报告怎么...
主任述职报告 主任述职报告(精选13篇)  在现实生活中,我们使用报告的情况越来越多,我们在写报告的时候要避免篇幅...
企业总经理年度述职报告 企业总经理年度述职报告(通用10篇)  我们在某个岗位上工作一段时间之后,需要通过述职的方式对自己前...
行业分析报告 行业分析报告(精选14篇)  随着社会一步步向前发展,报告十分的重要,报告具有语言陈述性的特点。那么...
成本会计实训报告 成本会计实训报告  实习目的:了解成本核算的基本程序,熟练运用各种成本计算方法,提高成本核算的实际操...