标签:Summer Training 相同 线段 BUPT 互不 矩形 dp Mod
题目链接:https://vjudge.net/contest/504104
D - It's a Mod, Mod, Mod, Mod World
是以前都没听说过的类欧几里得算法,呜
G - Intersecting Rectangles
题意
给定n个矩形,判断是否存在两个矩形相交,即边框有交点,保证所有的横坐标互不相同,所有纵坐标互不相同。
主席树做法
把每个矩形拆成四条线段,然后把横向线段的横坐标作为数组下标,纵坐标作为线段树下标存到主席树里,然后枚举纵向线段,查询主席树看是否有相交的横向线段。由于保证所有的横坐标互不相同,所有纵坐标互不相同,可以不判定线段的两端,这样就不需要担心同一个矩形拆出的横向线段和纵向线段会判定为相交了。
线段树扫描线做法
选取矩形的左右边或上下边做扫描线,扫描到下边时在线段两段两个点打标记,扫描到上边时删去,如果加入一条线段前这一区间内有标记,则说明相交,坐标互不相同保证了这样做是对的。
J - Subsequences in Substrings
题意
给定a,b两个字符串(b的长度≤100),求b是a的多少个子串的子序列。
思路
设dp[i][j]为以a[i]为结尾的与b[1~j]相同的子序列的最大起始位置,则每个位置贡献的答案为dp[i][len(b)],dp第一维可省略。
标签:Summer,Training,相同,线段,BUPT,互不,矩形,dp,Mod 来源: https://www.cnblogs.com/teralem/p/16488190.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。