![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数学
文章平均质量分 72
Jming_
Someday I will come back!
展开
-
鸽巢原理(入门优化) 之 poj 3370
解决方法同:http://blog.csdn.net/waitingandhopingv/article/details/22456391 在设计代码时,如还用上面方法, 1172ms // [3/27/2014 Sjm] #include #include #include #include #include using namespace std; const int MAX原创 2014-03-29 02:15:39 · 656 阅读 · 0 评论 -
数学 之 hdu 4710 Balls Rearrangement
// [7/31/2014 Sjm] /* 看到此题直接先打表找规律(数学很糟糕,不会用公式推,只好打表找规律) 发现循环周期 T = A和B的最小公倍数 于是依靠区间 [min(a, b), T] 去求一个周期内的花费,但是各种优化后依旧TLE。。。。 不过,再次看打出来的表(举一个小例子): 测试用例: 15 5 3 0 1 2 3 4 5 6 7 8 9原创 2014-07-31 21:17:55 · 589 阅读 · 0 评论 -
计算几何 之 hdu 1077 poj 1981 O(n^2logn)
终于知道怎么回事了。。。 // [7/10/2014 Sjm] // 题目: 用半径为 1 的圆,尽可能多的包含所给点。 /*********************************************************************** 其实要理解时间复杂度为O(n^2lgn)的算法,首先要知道以下三点: 1)若以一个点 p 为圆心,在半径为 1 的圆内,原创 2014-07-10 20:41:45 · 1084 阅读 · 0 评论 -
数学 之 Codeforces 359D - Pair of Numbers
// [7/13/2014 Sjm] /* 直接暴力,超时。。 不过有一点大家都知道: 如果 (b%a == 0),(c%b == 0), 那么 (c%a == 0) 一定是成立的。 故而以一个数字a为中心,向两边寻找能够被a整除的数后,已被寻找到的的数是不用再计算的。。。 (因为即使计算这些已被寻找到的数,最大的(r-l)一定 啊,,,比赛时怎么就没想到呢。。。。 */原创 2014-07-13 16:04:12 · 895 阅读 · 0 评论 -
计算几何 之 hdu 1077 poj 1981 O(n^3)
// [7/8/2014 Sjm] /* 题目: 用半径为 1.0001 的圆,尽可能多的包含所给点。 第一次做这样的计算几何题,,,感觉挺麻烦的,,特别精度的把握上。。。 思路: 1)任意两点间的距离大于直径(2.0002),则答案为 1 ; 2)若不满足1),则在圆上必存在两个点,而这两个点也正好确定了这个圆, 故遍历所有点,看有多少个点在圆中,满足条件点的个数即答案。 关键:原创 2014-07-08 18:27:44 · 720 阅读 · 0 评论 -
数学 之 Codeforces 354A - Vasya and Robot
// [7/13/2014 Sjm] /* 据题意知道: 假设重物用左手拿,则该重物左边的所有重物都是用左手拿 假设重物用右手拿,则该重物右边的所有重物都是用右手拿 从左手出发: 1)左手没拿重物 2)左手拿1或2或...或n个重物 故:枚举 (n+1) 种情况即可 注意(详见代码): 1)对一段区间内的重物重量之和的处理(O(1))。 2)注意,假设左手共拿 m 个重物,右手共拿 n原创 2014-07-13 11:14:15 · 699 阅读 · 0 评论 -
鸽巢原理(入门优化) 之 ahu oj 定位赛
解决方法同:http://blog.csdn.net/waitingandhopingv/article/details/22456391 对于此题,感觉很坑,关键要解决的问题是:设计代码,谨防TLE。。。 #include #include #include #include #include using namespace std; const int MAX_N = 10000原创 2014-03-29 02:25:34 · 1036 阅读 · 0 评论 -
数学 之 hdu 4861
/* 对于此题,举出数据找规律,即可AC。。。 不过悲催的WA了好多次,后来发现竟把"YES"打印成"Yes"了。。。。 注释掉的代码是用来找规律的。。。 */原创 2014-07-23 21:43:56 · 680 阅读 · 0 评论 -
数学 之 hdu 4722
// [7/13/2014 Sjm] /* 规律: [xxxx0, xxxx9] (指十位及更高位都相等但仅有个位不同的连续9个数字),一定仅有一个满足数位之和整除10 于是: 对于所给数[a, b], 判断a值是否个位为0,若否:将a值不断加1,并赋值给A,直至A个位为 0; 判断b值是否个位为9,若否:将b值不断减1,并赋值给B,直至B个位为 9。 故答案由三部分加和: 1)[a,原创 2014-07-13 10:42:25 · 478 阅读 · 0 评论 -
鸽巢原理(入门) 之 poj 2356
// [3/27/2014 Sjm] /* 鸽巢原理: 若 n+1 个物体被放进 n 个盒子, 那么至少有一个盒子包含两个或者更多的物体 解决 poj 2356: 问题简化: 有 n 个数字,a1, a2, a3..., an, 找出连续的数字串,使数字串的和可整除 n。 若存在,则输出数字串个数,并依次输出数字串;否则,输出0。 分析: 依次求出 sum[1] = a1, sum[2] =原创 2014-03-29 02:02:49 · 921 阅读 · 0 评论 -
贪心 + 找规律 之 hdu 5014 Number Sequence
/* 关键:贪心 + 找规律 0 1 2 3 4 5 6 肯定先从大的开始去找(贪心): 6:110 ---> 1:001 ==> 6^1 = 7 结果发现: 5: 101 ---> 2:010 ==> 5^2 = 7 4:100 ---> 3: 011 ==> 4^3 = 7 若 x ---> y,则区间 [x, y] 的所有值均可找到与其相匹配的数字。。。 */原创 2014-09-17 13:57:00 · 519 阅读 · 0 评论