04 2017 档案

摘要:链接: "传送门" 思路: 水题略 / File Name: hdu2078.cpp Author: WArobot Blog: http://www.cnblogs.com/WArobot/ Created Time: 2017年04月30日 星期日 23时47分30秒 / include usi 阅读全文
posted @ 2017-04-30 23:55 ojnQ 阅读(167) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 思路: 判断每支箭是否在多边形内,计算几何点定位中水题,不清楚下面的代码能不能适用于给定点的顺序不确定( 既不是顺时针又不是逆时针 ) / File Name: hdu1756.cpp Author: WArobot Blog: http://www.cnblogs.com/WA 阅读全文
posted @ 2017-04-30 23:41 ojnQ 阅读(202) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 题意: 题意与3370类似 注意: 注意输出就ok,输出的是集合的值不是集合下标 / File Name: poj2356.cpp Author: WArobot Blog: http://www.cnblogs.com/WArobot/ Created Time: 2017年0 阅读全文
posted @ 2017-04-30 13:04 ojnQ 阅读(160) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 题意: 给出N个点( Xi , Yi ),和点的最远位置M,询问是否有这样的四个点 (A,B,C,D)(A M,枚举超过 2M 时必定能找到一组解,所以直接暴力就ok了,所以这道题的复杂度应该是 O ( min(2M , N^2) ) 新颖: 这道题有趣在于可以用类似鸽巢定理的原 阅读全文
posted @ 2017-04-30 12:56 ojnQ 阅读(140) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 题意: 给一个长为 n 的串,问是否有子串的和是 m 的倍数。 思路: 典型鸽巢定理的应用,但是这里 n,m 的大小关系是不确定的,如果 n = m 根据定理可以很简单的判定是一定有解的,当 n File Name: hdu5776.cpp Author: WArobot Blo 阅读全文
posted @ 2017-04-29 23:22 ojnQ 阅读(135) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 思路: 思维僵硬了,僵硬...... 简单的插隔板思想 ......选出来数量最多的糖果种类X,假设X数量为MAX,然后以X作为“隔板”,形成X _ X _ X _ X .... _ X,中间便形成了 MAX 1 个区域( 区域内可以放任意多同种类不相邻的糖果 ),也就是说其他种 阅读全文
posted @ 2017-04-29 21:02 ojnQ 阅读(127) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 题意: 万圣节到了,有 c 个小朋友向 n 个住户要糖果,根据以往的经验,第i个住户会给他们a[ i ]颗糖果,但是为了和谐起见,小朋友们决定要来的糖果要能平分,所以他们只会选择一部分住户索要糖果,这样糖果恰好可以平分又不会剩下,输出索要糖果的用户编号。如果没有任何一组住户给的糖 阅读全文
posted @ 2017-04-29 19:00 ojnQ 阅读(255) 评论(0) 推荐(0) 编辑
摘要:本来以为HNU的huicpc035和我一样退役了,后来听说他组成了新的footman队,于是又关注了下他。 035体现了两个我觉得非常重要的品质: 1、刻苦的训练 2、有效的训练 (本文将主要讨论个人训练,不讨论团队合作) 而这些品质对于我们弱校ACMer选手水平的提高我觉得很重要。(注意:仅限于我 阅读全文
posted @ 2017-04-28 22:51 ojnQ 阅读(171) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 思路: 错排模板题,水题是非常浪费时间的。 / File Name: hdu4535.cpp Author: WArobot Blog: http://www.cnblogs.com/WArobot/ Created Time: 2017年04月28日 星期五 15时30分45秒 阅读全文
posted @ 2017-04-28 16:27 ojnQ 阅读(109) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 思路: 错排模板题,水题是非常浪费时间的 / File Name: hdu1465.cpp Author: WArobot Blog: http://www.cnblogs.com/WArobot/ Created Time: 2017年04月28日 星期五 15时30分45秒 阅读全文
posted @ 2017-04-28 16:17 ojnQ 阅读(144) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 思路: 错排水题,从N个人中选出M个人进行错排,即 C(n,m) d[m] 补充: 组合数C(n,m)能用double计算吗?第二部分有解释 Part 1. 1. 分别求出来组合数的分子和分母然后相除 / File Name: hdu2049.cpp Author: WArobo 阅读全文
posted @ 2017-04-27 23:12 ojnQ 阅读(254) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 思路: 错排模板,典型错排问题,n个人所有人都不会抽到自己的方案数为 Dn = (n 1) (Dn 1 + Dn 2) / File Name: hdu2048.cpp Author: WArobot Blog: http://www.cnblogs.com/WArobot/ C 阅读全文
posted @ 2017-04-27 22:43 ojnQ 阅读(131) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 题意: 一个人自命不凡,他从1960年开始每10年更新一次计算机的最长储存长数。1960年为4位,每10年翻一倍。给出一个年份y,问这一年计算机可以执行的n!而不溢出的最大n值 思路: 如果直接比较 2^x 1 不妨对左右取对数,使之变为 x log10(2) 。 使用斯特林公式 阅读全文
posted @ 2017-04-27 18:11 ojnQ 阅读(152) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 题意: 求n!的位数 思路: 下面是三种情况,特别能体现知识面从窄到宽的巨大差别! 1.直接暴力,每当阶乘超过1e9时计算位数,最后再计算一次位数 / File Name: hdu1018t1.cpp Author: WArobot Blog: http://www.cnblog 阅读全文
posted @ 2017-04-26 22:38 ojnQ 阅读(187) 评论(0) 推荐(0) 编辑
摘要:转载自:http://blog.sina.com.cn/s/blog_adb6743801019h29.html ACM 所有算法 数据结构 栈,队列,链表 哈希表,哈希数组 堆,优先队列 双端队列 可并堆 左偏堆 二叉查找树 Treap 伸展树 并查集 集合计数问题 二分图的识别 平衡二叉树 二叉 阅读全文
posted @ 2017-04-26 15:06 ojnQ 阅读(538) 评论(1) 推荐(3) 编辑
摘要:链接: "传送门" 思路: 母函数模板题 / File Name: 3.cpp Author: WArobot Blog: http://www.cnblogs.com/WArobot/ Created Time: 2017年04月22日 星期六 21时55分43秒 / include using 阅读全文
posted @ 2017-04-22 22:12 ojnQ 阅读(163) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 题意: 略 思路: f(n) = (A f(n 1) + B f(n 2)) mod 7 — f(n) = (A f(n 1)%7 + B f(n 1)%7)%7 检查输出可以发现规律,每48个数一循环,因此只需要打出前50个数的fib表然后对n%7即可。 / File Name 阅读全文
posted @ 2017-04-22 20:51 ojnQ 阅读(129) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 题意: 一个数n有多少种拆分方法 思路: 典型母函数在整数拆分上的应用 / File Name: 1.cpp Author: WArobot Blog: http://www.cnblogs.com/WArobot/ Created Time: 2017年04月20日 星期四 2 阅读全文
posted @ 2017-04-22 20:11 ojnQ 阅读(135) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 题意: 略 思路: next_permutation(),水,但是要注意一点的是如果是最后一个排列next_permutation会返回第一个排列并结束,所以如果到了最后一个排列还不是第k个就处理一下即可 / File Name: 31.cpp Author: WArobot B 阅读全文
posted @ 2017-04-19 22:42 ojnQ 阅读(172) 评论(0) 推荐(0) 编辑
摘要:1. 概述 函数名: fflush() 功 能: 清除读写缓冲区,需要立即把输出缓冲区的数据进行物理写入时 头文件: stdio.h 原型: int fflush(FILE stream),其中stream是要冲洗的流 2. 函数说明 fflush()会强迫将缓冲区内的数据写回参数stream 指定 阅读全文
posted @ 2017-04-18 23:27 ojnQ 阅读(3999) 评论(0) 推荐(1) 编辑
摘要:链接: "传送门" 题意: 给你一个隐藏数,这个隐藏数在[2,100]之间,现在最多可以询问20次,每次询问的是这个数是不是隐藏数的底数,是为yes,不是为no,每次询问后都需要flush一下输出缓冲区,最后判断这个数是不是素数。 思路: 直接打出50以内的素数表,挨个进行询问,用计数器记录出现的因 阅读全文
posted @ 2017-04-18 18:44 ojnQ 阅读(271) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 题意: 题目balabala说了一大堆,然而并没什么卵用,给你n个数,将这个集合分割成两部分,构成三角形的两个边,让你求补充的那个边最短是多长 思路: 三角形三边具有 a + b c,如果想让补充的边最短,只需要在集合中选出最大的一个值a,然后让剩余值的和为c,那 min_b = 阅读全文
posted @ 2017-04-18 00:49 ojnQ 阅读(238) 评论(0) 推荐(0) 编辑
摘要:链接: "传送门" 题意: 给出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 阅读(1137) 评论(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) 编辑