摘要:
680D - Bear and Tower of Cubes 思路:dfs+贪心,设剩余的体积为res,存在a,使得a3 ≤ res,每次取边长为a的立方体或者边长为a-1的立方体(这时体积上限变成a3 -1)。 代码: 阅读全文
摘要:
Kolakoski 思路: 从前往后扩展,前后构成映射关系。 代码: 阅读全文
摘要:
Euler theorem 思路:找规律 a 余数 个数 1 0 1 2 2 0 2 2 3 0 1 3 3 4 0 1 4 3 5 0 1 2 5 4 6 0 1 2 6 4 7 0 1 2 3 7 5 8 0 1 2 3 8 5 。。。。。。 对于每个a,所有小于ceil(a/2)的自然数都是b 阅读全文
摘要:
535D - Tavas and Malekas 思路:先把字符串填充好(后面填充的把前面覆盖掉),然后用KMP查找有多少个子串,如果比填充的少,说明有些覆盖矛盾,输出0;否则,设不确定的点的个数为k,答案为(26^k)%(1e9+7)。 代码: 阅读全文
摘要:
1.KMP算法 这个博客写的不错:http://www.cnblogs.com/SYCstudio/p/7194315.html 模板: next数组的求解,那个循环本质就是如果相同前后缀不能加上该位置成就该位置的next数组就一直找相同前后缀的相同前后缀。 求解前缀数组F(也叫next数组): 利 阅读全文
摘要:
545D - Queue 思路:忍耐时间短的排在前面,从小到大排序,贪心模拟,记录当前等待时间,如过等待时间大于当前的这个人得忍耐时间,那么就把这个人扔到最后面,不要管他了(哼╭(╯^╰)╮,谁叫你那么没耐心呢),所以也就不用记录为他服务的时间。 代码: 阅读全文
摘要:
535C - Tavas and Karafs 思路:对于满足条件的r,max(hl ,hl+1 ,hl+2 ,......,hr )<=t(也就是hr<=t)且∑hi<=t*m。所以通过这个条件二分找出最大的r。 二分的下界为1,上界为使得hi等于t的i(hi=t ==> a+(i-1)*b=t 阅读全文
摘要:
385C - Bear and Prime Numbers 思路:记录数组中1-1e7中每个数出现的次数,然后用素数筛看哪些能被素数整除,并加到记录该素数的数组中,然后1-1e7求一遍前缀和。 代码: 阅读全文
摘要:
496C - Removing Columns 思路:暴力,用vis标记数组实时记录一下之前的行i+1和上一行i否全相等,false表示全相等。 代码: 阅读全文
摘要:
Chess 思路:求C(n,m),除法取余用乘法逆元算。 代码: 阅读全文
摘要:
839B - Game of the Rows 思路:先放4个的,然后再放2个的,最后再放1个的。 代码: 阅读全文
摘要:
483B - Friends and Presents 思路:这个博客写的不错:http://www.cnblogs.com/windysai/p/4058235.html 代码: 阅读全文
摘要:
352B - Jeff and Periods 思路:水题,考验实现(implementation)能力,来一波vector[允悲]。 代码: 阅读全文
摘要:
768B - Code For 1 思路:类似于线段树的区间查询。 代码: 阅读全文
摘要:
38B - Chess 思路:懂点象棋的规则就可以,看看哪些点可以放马。 代码: 阅读全文
摘要:
735B - Urbanization 思路:贪心。人数少的城市住钱最多的那几个人。 不证明了,举个例子吧:a1<a2<a3<a4<a5 (a1+a2+a3)/3+(a4+a5)/2==(2*a1+2*a2+2*a3+3*a4+3*a5)/6① (a1+a2)/2+(a3+a4+a5)/3==(3* 阅读全文
摘要:
534B - Covered Path 思路:贪心,每一秒取尽可能大并且可以达到的速度。 画张图吧,不解释了: 代码: 阅读全文
摘要:
Classes 思路:a中包含的元素:只参加a的,只参加a且b的,只参加a且c的,只参加a且b且c的; b中包含的元素:只参加b的,只参加a且b的,只参加b且c的,只参加a且b且c的; c中包含的元素:只参加c的,只参加b且c的,只参加a且c的,只参加a且b且c的; ab中包含的元素:只参加a且b的 阅读全文
摘要:
Inversion 思路:从大到小排序后,每次找到第一个下标不整出i的输出。 代码: 阅读全文
摘要:
595B - Pasha and Phone 代码: 阅读全文