随笔分类 -  模拟

摘要:关键在排序!!! 数组间的排序会超时,所以需要把一个数组映射成一个数字,就可以了 阅读全文
posted @ 2017-07-26 11:25 Pacify 阅读(146) 评论(0) 推荐(0)
摘要:题意: 一个字符串S 问其中有几个子串能满足以下条件: 1、长度为M*L 2、可以被分成M个L长的小串 每个串都不一样 分析: hash方法,一个种子base,打表出nbase[i]表示base的i次方 将以i位字符开头之后的串hash成一个无符号长整型:hash[i]=hash[i+1]*base 阅读全文
posted @ 2017-07-19 15:38 Pacify 阅读(177) 评论(0) 推荐(0)
摘要:题意: 给出一个字符串,让你往后添加最少的字符,使其成为回文串。 分析: 题目就相当于求后缀字符串为回文串的最长长度,判断回文串要O(n)时间,直接判断肯定不行。我们从后往前枚举,每次字符串与上一个字符串仅相差一个字符,所以我们将字符hash,每次的hash值就与上一个hash有关。于是我们判断后缀 阅读全文
posted @ 2017-07-19 10:17 Pacify 阅读(188) 评论(0) 推荐(0)
摘要:题意: 给出n个A串和m个B串,将这A串与B串连接(B接在A后面)可以生成n*m个AB串,求不同的AB串的数量 分析: set直接水过 hash可以节省时间 阅读全文
posted @ 2017-07-18 16:20 Pacify 阅读(163) 评论(0) 推荐(0)
摘要:题意: [3月的第二个周日02:00:00 , 3月的第二个周日03:00:00) 这个区间都不是PST或PDT,[11月的第一个周日01:00:00 , 11月的第一个周日02:00:00) 这个区间既是PST又是PDT,中间的是PDT,两边的是PST。 分析: 计算星期几可以直接用公式进行计算 阅读全文
posted @ 2017-07-17 11:12 Pacify 阅读(357) 评论(0) 推荐(0)
摘要:大致题意: 给出一张表,n行m列,每一行的列用逗号分隔。判断这个表是否有冗余元素。如果一张表中有两行两列对应的的元素相同,那么这个表就有冗余元素。 分析: 先枚举要排序的列,然后枚举行,如果相邻两行相等,再枚举列,判断元素是否相等。 阅读全文
posted @ 2017-06-10 16:55 Pacify 阅读(281) 评论(0) 推荐(0)
摘要:题意:给定s1,s1两副扑克,顺序从下到上。依次将s2,s1的扑克一张一张混合。例如s1,ABC; s2,DEF. 则第一次混合后为DAEBFC. 然后令前半段为s1, 后半段为s2. 如果可以变换成所给出的字符串,输出变换次数即可;否则,输出-1。 这题数据太水了,我是这样判断无法变换成题目所给出 阅读全文
posted @ 2016-08-17 15:21 Pacify 阅读(628) 评论(0) 推荐(0)
摘要:大致题意不难理解,注意几点细节。 转向触发条件: ⑴ 一个小时走完后向左转; ⑵ 碰到墙向后转; ⑶ 两只兔子都走完一个小时的路后(即当时间K为整数时),如果相遇,就交换方向,并且不再向左转。(之前一直以为走的过程中相遇也可以交换方向,一直wa) 还有一点,题目所给的图x轴为竖直方向,y轴为水平方向 阅读全文
posted @ 2016-08-17 11:41 Pacify 阅读(295) 评论(0) 推荐(0)
摘要:题意是将一串数字转换成另一种形式。比如5553141转换成2个1,1个3,1个4,3个5,即21131435。1000000000000转换成12011。数字的个数是可能超过9个的。n个m,m是从小到大排序。 输出的结果又四种情况,建议判断的时候就按照题目的顺序进行判断,否则可能出错。第一种情况是进 阅读全文
posted @ 2016-07-31 16:50 Pacify 阅读(1113) 评论(2) 推荐(0)
摘要:题意不难理解,但是一开始还是没有看清楚题目。Replace the first occurrence of the find string within the text by the replace-by string, then try to perform the same replaceme 阅读全文
posted @ 2016-07-30 10:36 Pacify 阅读(258) 评论(0) 推荐(0)