Codeforces#524 D、E、F

D题 Olya and magical square
题目链接:http://codeforces.com/contest/1080/problem/D
题意:
对一个初始边长为2^n的正方形,执行若干次划分操作:选一个现有的完整正方形,讲其按“十字型”划分成4个相同的小正方形
要求判断是否能在k次划分操作之后,使得左下角的正方形能找到一条“路径”到达右上角的正方形,并输出左下角小正方型的边长
对路径的要求:路径上相邻的两个正方形的边长必须相同

思路:
首先可以将这条路径放置在整个区域的左上两条边上,如图所示


image.png

我们需要计算这两个值:当左下角正方形边长为2^k时,在保证这条路径存在的前提下最少要切多少次,以及最多可以切多少次
先计算最多需要的次数F(n):

image.png

对于一个边长为2^n的矩形,最多的分割次数是最后都分割成边长为1的小正方形,需要的分割次数记为f[n]
由递推公式f[n]=4f[n-1]+1得到f[n]=(4^n-1)/3
而为了保证外侧边长为为2^k ,我们切最外侧两条边上这2
(2^n) / (2^k) - 1个小正方形的“刀”都得“收回”,而每个小正方形的切割次数是f[k]
于是可以得到,最多的分割次数F(n)=f[n]-((2^(n-k+1)-1)*f[k]

再计算最少需要的次数G(n):


image.png

由递推公式G(n)=G(n-1)+2^n-1 得到G(n)=2^(n+1)-(n+2)

由于g(n)与f(n)都是指数函数,增长的速度非常快,所以从小到大枚举左下角小正方形的边长,计算k是否满足G(n)<=k<=F(n)即可

E题 Sonya and Matrix Beauty
题目链接:http://codeforces.com/contest/1080/problem/E
题意:
给出一个字符矩阵,求有多少个子矩阵满足如下性质:
对于子矩阵的每一行(注意不是列),可以对字符任意排序,使得子矩阵的每一行每一列都是回文串

思路:
如果一个字符经过排序之后可以变成一个回文串,则要求它的字母中出现奇数次的数量<=1
而对于两行回文串,他们组成的矩阵的每一列都是回文,则要求他们每个字母出现的次数相同
于是可以枚举子矩阵的行的起止位置,将每一行看成一个整体,于是一个p行q列的矩阵就“退化“成一个q个元素的”字符串“
再对这个“字符串”求回文子串的个数即可

注意求字符串回文子串个数的朴素做法是O(n^2), 加上本身需要O(n^2) 枚举矩形,所以最后是O(n^4),肯定会超时
这时候就需要用马拉车算法来O(n)计算回文子串的个数了

F题 Katya and Segments Sets
题目链接:http://codeforces.com/contest/1080/problem/F
题意:
给出n个集合,每个集合有若干个区间(例如[2,3],[3,5]),询问m次,每次询问第a到第b个集合中,是否都至少含有一个区间在[l,r]内(即l<=x<=y<=r)

思路:
假设n个集合一共有k个区间,按左端点从小到大排序得到一个序列seg[],将这k个区间按最左端点分类,最多可以构成k棵线段树
每棵线段树Tree[i]负责计算最左端点为seg[i]时,集合[a,b]内的最大右端点。
对于一次询问,首先找到x>=l的第一棵树,再判断其中[a,b]的最大y是否<=r即可
由于要保证第i棵树中不包含比seg[i]左端点小的区间,需要按从右到做的顺序依次添加区间,而这个过程可以通过可持久化线段树(主席树)来做

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,294评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,780评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,001评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,593评论 1 289
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,687评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,679评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,667评论 3 415
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,426评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,872评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,180评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,346评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,019评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,658评论 3 323
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,268评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,495评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,275评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,207评论 2 352

推荐阅读更多精彩内容