摘要: 链接: "传送门" 题意: 给出3 × 3的方块,其中任意2 × 2的方块和左上角2 × 2的和相等,还给出9个格子中的4个——a,b,c,d ,在1~n中选择一些数(可重复)填入剩下5个格子中,问有多少种填法 思路: 设5个 ?分别为x1,x2,x3,x4,x5 ,最后合并整理可以求得两个式子: 阅读全文
posted @ 2017-04-18 00:06 ojnQ 阅读(118) 评论(0) 推荐(0) 编辑
摘要: 链接: "传送门" 题意: 给出一个串s,改变s串中的一些字符使得其所有子串两两不相同,求出最小改变次数,如果无论怎么改变一些字符都无法避免子串两两相同则输出 1。 思路: 如果长度 26肯定是无解,如果长度在26之内,记录每个字符出现的次数,如果超过一次计数器就+1 / File Name: A. 阅读全文
posted @ 2017-04-17 23:39 ojnQ 阅读(123) 评论(0) 推荐(0) 编辑
摘要: 题目来源: 2016 CCPC 长春站 题意: 给出两个序列 a[] , b[] ,如果b1,b2....bm能够与aq,aq+p,aq+2p...aq+(m 1)p对应( q+(m 1)p=1 ),则q为一个合法的数,找出满足题意的q的个数 思路: 简单KMP,枚举起点q,如果匹配成功后记录一次然 阅读全文
posted @ 2017-04-17 16:49 ojnQ 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 题目来源: 2016 CCPC 长春站 题意: 定义一个排列p1,p2,p3....pn的调和数值如下方公式。例如一个数列 1,2,3,4,5 的调和值就为4。 现在给出一个k,求出调和值第k小的一个permutation,这个permutation不唯一 思路: 首先可以先构造出来一个调和值为k的 阅读全文
posted @ 2017-04-17 16:03 ojnQ 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 题目来源: 2016 CCPC 长春站 题意: 青蛙先生想用n个长度为1~n的木棍来组成一些三角形,但是有一个坏蛋就想破坏青蛙先生的好事,请问在这n个木棍中至少偷出来几个木棍使得青蛙先生无法再用剩下的一些木棍组成三角形 思路: 假设 p[i] = x 代表有i个木棍至少偷走x个剩下的木棍就无法组成三 阅读全文
posted @ 2017-04-17 14:11 ojnQ 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 题目来源: 2016 CCPC 长春站 题意: 青蛙先生想计算一个式子的值,输入两个数列a[],b[]求出最后的分子和分母 思路: 一开始看到这个图片首先想到的是递归实现,递归部分始终计算的是右下部分 / File Name: A.cpp Author: WArobot Mail: 76805900 阅读全文
posted @ 2017-04-17 14:08 ojnQ 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 新颖之处:使用了__builtin_expect(!!(x),0)引导预测分支条件 题解:找到规律即可,虽然我找的规律不是太好,显得很是丑陋.... 1. 首先第一个字符肯定是加入答案中,然后间隔为 2 n 2 2. 除每一行首字符之外,第一个字符 t1 的位置为 d i , 第二个字符 t2 = 阅读全文
posted @ 2017-04-11 23:34 ojnQ 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 新颖之处:虽然代码十分清晰明了,但是这种书写方式、以及代码中变量的设置都是很值得学习的! 阅读全文
posted @ 2017-04-11 16:18 ojnQ 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 转自http://blog.csdn.net/zklth/article/details/7978362 uint8_t / uint16_t / uint32_t /uint64_t 是什么数据类型?这些数据类型是 C99 中定义的,具体定义在:/usr/include/stdint.h ISO 阅读全文
posted @ 2017-04-10 23:34 ojnQ 阅读(1142) 评论(0) 推荐(0) 编辑
摘要: LeetCode 7 Reverse Integer 新颖之处: 1. 如何判断一个数在反转时是否溢出呢? 假设int的范围上限为1234,在反转后应该为4321,这时候一定会爆掉int,应该返回0。y记录反转结果,prey记录上次结果,如果 y/10 != prey 就代表溢出,因为y溢出会致使y 阅读全文
posted @ 2017-04-10 23:25 ojnQ 阅读(102) 评论(0) 推荐(0) 编辑