【基础算法】
文章平均质量分 53
剑紫青天
在校本科生,ACMer
展开
-
HDOJ-1563-Find your present! 解题报告
位运算巧解题。题意:给你n个数,n为奇数,这n个数里面除了一个数只出现一次其他数都有出现两次,请输出那个出现一次的数。 我的解题思路:根据异或运算性质,相同的数异或等于0,0与任何数异或都得任何数,异或运算满足交换律。这么以来把这所有的数都异或之后就得到了只出现一次的数了。 我的解题代码:#include #include #include原创 2015-02-18 11:08:55 · 837 阅读 · 0 评论 -
HDOJ-5175-Misaki's Kiss again 解题报告
枚举和运用位运算性质。题意:给你一个数N(0 我的解题思路:首先注意数据范围已经超过32位整型了,所以要用64位整型。由于数据范围太大所以我们不能够直接枚举M然后求M与N的最大公约数是否等于M与N异或的值。不过我们可以直接枚举最大公约数,也就是枚举N的约数。因为N与M的最大公约数也是N与M异或的值,根据异或的性质:如果A XOR B = C,那么C XOR B = A,我原创 2015-02-16 14:24:16 · 570 阅读 · 0 评论 -
POJ-2769-Reduced ID Numbers 解题报告
同余的应用,哈希。题意:给你G个学生的编号,编号为0~10^6的整数,请你找出最小的正整数m使得所有学生的编号对与模m不同余。 我的解题思路:从小到大枚举m然后哈希判断是否都不同余。我想到了一个小小的优化就是如果有n个学生的话,那么最小的正整数m至少是n,这个思想是基于容斥原理的。但是还是TLE了,最后看了讨论版才知道memset的优化,只memset用过的部分。优化后从T原创 2015-03-28 16:31:10 · 912 阅读 · 0 评论 -
HDOJ-5199-Gunner 解题报告
哈希。题意:有n个鸟分别在n棵树的顶端,第i棵树的高度为Hi,有个猎人准备开m枪打鸟,开枪的高度为Qi,可以把在Qi高度的所有鸟击落,现在请你输出每开一枪能够击落的鸟的个数。 解题思路:刚开始还以为是线段树,一看数据范围就萌萌哒了。看题解说是哈希可搞,于是就学了一下STL里面的map哈希,果然名不虚传。 解题代码:#include #inclu原创 2015-04-05 20:03:29 · 603 阅读 · 0 评论 -
POJ-1833-排列 解题报告
STL全排列水题。PS:我已经水到只能做这种水题了Orz。 解题思路:没什么好说的,就是STL中的全排列。 解题代码:#include #include #include #include #include #include #include #include #include #include #include usin原创 2015-04-17 14:46:41 · 983 阅读 · 0 评论