[JOISC2014]JOIOJI】的更多相关文章

题目大意: 给你一串仅包含'J''O''I'的字符串,问满足三种字符出现次数相等的最大字串是多少? 思路: 用map存一下出现次数前缀和两两之差出现的最早位置,每次看一下当前的两两之差最早的出现位置是多少. #include<map> #include<cstdio> #include<cctype> inline int getint() { register char ch; while(!isdigit(ch=getchar())); register '; )+…
4236: JOIOJI Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://www.lydsy.com/JudgeOnline/problem.php?id=4236 Description JOIOJI桑是JOI君的叔叔.“JOIOJI”这个名字是由“J.O.I”三个字母各两个构成的. 最近,JOIOJI桑有了一个孩子.JOIOJI桑想让自己孩子的名字和自己一样由“J.O.I”三个字母构成,并且想让“J.O.I”三个字母的出现次数恰好相同.…
JOIOJI桑是JOI君的叔叔."JOIOJI"这个名字是由"J.O.I"三个字母各两个构成的. 最近,JOIOJI桑有了一个孩子.JOIOJI桑想让自己孩子的名字和自己一样由"J.O.I"三个字母构成,并且想让"J.O.I"三个字母的出现次数恰好相同. JOIOJI桑家有一份祖传的卷轴,上面写着一首长诗,长度为N,由"J.O.I"三个字母组成.JOIOJIさん想用诗中最长的满足要求的连续子串作为孩子的名字…
来自FallDream的博客,未经允许,请勿转载,谢谢. JOIOJI桑是JOI君的叔叔.“JOIOJI”这个名字是由“J.O.I”三个字母各两个构成的. 最近,JOIOJI桑有了一个孩子.JOIOJI桑想让自己孩子的名字和自己一样由“J.O.I”三个字母构成,并且想让“J.O.I”三个字母的出现次数恰好相同. JOIOJI桑家有一份祖传的卷轴,上面写着一首长诗,长度为N,由“J.O.I”三个字母组成.JOIOJIさん想用诗中最长的满足要求的连续子串作为孩子的名字. 现在JOIOJI桑将这首长诗…
[JOISC2014]スタンプラリー 题目大意: 有\(n(n\le3000)\)个车站,另有一个起点站和终点站,所有车站排成一条链,相邻两个车站之间的距离为\(t\).每个车站都有一个上行站台.一个下行站台.除起点站和终点站外,每个站点都有一个超市,超市在上行站台和下行站台之间.对于站点\(i\),从上行站台到超市的时间为\(u_i\),从超市到上行站台的时间为\(v_i\),从下行站台到超市的距离为\(d_i\),从超市到下行站台的距离为\(e_i\).问从起点站出发,经过所有超市到达终点站…
[JOISC2014]友だちをつくろう 题目大意: 一个\(n(n\le10^5)\)个点,\(m(m\le2\times10^5)\)条边的有向图.对于两个点\(i,j\),如果存在一个点\(k\)使得存在边\(k\to i\)和边\(k\to j\),那么就新增边\(i\to j\)和\(j\to i\).不断进行上述操作,直至无边可加为止.问最终能有几条边. 思路: 用并查集维护所有的完全图.BFS将剩下能连的边连上. 源代码: #include<queue> #include<c…
[JOISC2014]ストラップ 题目大意: 有\(n(n\le2000)\)个挂饰,每个挂饰有一个喜悦值\(b_i(|b_i|\le10^6)\),下面有\(b_i(b_i\le10^6)\)个挂钩,可以用来挂别的挂饰.一开始只有一个挂钩,问喜悦值总和的最大值. 思路: \(f[i][j]\)表示考虑前\(i\)个挂饰,还多\(j\)个钩子时,喜悦值总和的最大值. 考虑同样的一堆挂件,先挂\(a_i\)大的可以尽可能避免钩子不够用的情况.因此需要先将所有挂件按\(a_i\)从大到小排序. 时间…
[JOISC2014]電圧 题目大意: 一个\(n(n\le10^5)\)个点,\(m(m\le2\times10^5)\)条边的无向图.要在图中找到一条边,满足去掉这条边后,剩下的图是一个二分图,且若再将这条边接上,两端一定在二分图的同一侧.问有多少这样的边. 思路: 这样的边一定满足在所有奇环的交上,并且不属于任何一个偶环. 随便求出原图的一棵生成树,枚举每一个非树边,若构成奇环,则将对应环上边权+1,否则-1.最后统计边权=奇环个数的边的数量.树链剖分+线段树维护即可. 对于包含多条非树边…
[JOISC2014]バス通学 题目大意: 有\(n(n\le10^5)\)个点和\(m(m\le3\times10^5)\)条交通线路.第\(i\)条交通线路可以让你在时间\(x_i\)从\(a_i\)出发,并在\(y_i\)时到达\(b_i\).\(q(q\le10^5)\)次询问,每次询问若要在时间\(l_i\)到达\(n\)点,最晚什么时候要从\(1\)点出发. 思路: 将每条交通线路拆成两种操作:出发和到达. 用\(f_i\)表示乘上第\(i\)辆车最晚几点出发,\(g_i\)表示到达…
[JOISC2014]たのしい家庭菜園 题目大意: 给定一个长度为\(n(n\le3\times10^5)\)的序列\(A(A_i\le10^9)\).只能交换相邻两个数,问最少需要几步可以将它变成一个单峰序列. 思路: 对于每个元素,看它两边哪边比他大的数少,就把它移到哪边.用树状数组维护即可,时间复杂度\(\mathcal O(n\log n)\). 源代码: #include<cstdio> #include<cctype> #include<climits> #…