数学
aozil_yang
这个作者很懒,什么都没留下…
展开
-
UVA 10075 Airlines (Floyd + 数学转换)
题意:告诉你n个点的经度 和 纬度, 告诉你m 个有向边, q 个查询 ,求两点的最短路。思路:显然裸floyd就是这个两点之间距离比较恶心了。我们直接以球心为圆点, 建立XYZ直角坐标系。球心连接 经度 0 的位置。 然后就好求 任意点的xyz 坐标了。假设纬度 是wd(弧度), 经度是jd(弧度)那么X = R * cos(wd) * cos(jd)原创 2017-08-23 18:50:14 · 268 阅读 · 0 评论 -
UVA - 10341 Solve It (数学--二分法求解)
大体题意:给你一个函数,给你定义域,求出是否有解,有解输出解,无解输出 No solution思路:分析式子和输入 知道这个式子是一个单调递减的,那么就可以用二分了!当两个端点 的函数值乘积大于0时,说明同号,则无解!否则有唯一解! 直接二分找就可以了!教训:这种求解方程的二分,涉及到小数的二分 ,最好用循环多少来解,不要用l #include#include原创 2016-09-05 19:51:39 · 373 阅读 · 0 评论 -
Codeforces Round #372 (Div. 2) -- C. Plus and Square Root(找规律枚举)
大体题意:初始时,你的值是2,你可以按+按钮,会让你的值加上任意一个数k,也可以进行开方操作,当你的x是完全平方数时才可以开方,开方后的数值必须要求是你的等级level的整数倍,求要从1级变到n+1级,在开方之前需要加的数是多少?大体上是这样,在仔细读读,并不难理解!思路:其实输出有很多,我是感觉最后一个样例不错,就按照最后一个样例来求值了!开始是2,+2后,变成4,开方变成2原创 2016-09-18 02:56:41 · 1184 阅读 · 0 评论 -
HDU 5882 Balanced Game (脑筋急转弯)
大体题意:石头剪刀布这个游戏是公平的,每个手势攻防都是一样的!,现在给你n 个手势判断能否公平!思路:其实读完题目 猜到了,,没敢立马写= =思路很简单,要想每一个手势攻防都一样,那么必须n-1个手势有一半攻击自己,有一半防守自己,那么显然n-1是偶数,当n 是奇数是成立的,否则不成立!#include #include #include #include usin原创 2016-09-17 20:49:08 · 874 阅读 · 0 评论 -
HDU 5879 Cure (数学)
大体题意:给你一个数字k 求1 + 1/4 + 1/9 .... + 1/(k^2)?思路:忘记队友怎么推得了,这个式子有个极限是 pi*pi / 6,如果只取前5位的话,那么k = 1000000的时候就可以达到了!因此我们判断那个数字如果大于1000000 直接输出pi*pi/6的前五位!否则 就打表计算!坑:注意 用字符串读取整数,会很长的= =!#原创 2016-09-17 20:37:04 · 646 阅读 · 0 评论 -
AIM Tech Round 3 (Div. 2) -- D. Recover the String (思路题目--构造字符串)
大体题意:给你一个只包含01的字符串,告诉你00,01,10,11子字符串的个数,还原这个字符串!思路:好恶心的一道题目,本来比赛已经推出来了,但是时间只有几分钟了! 比赛完 又不断wa样例 又写了一小时终于过了!只能说自己想的还不够全面,不能把自己代码错误想全面,还要在努力!这个题目实际有规律的!先根据00 和11的个数 能够确定 最终字符串0的个数和1的个数! 就原创 2016-08-25 04:21:40 · 694 阅读 · 0 评论 -
Educational Codeforces Round 16 -- C - Magic Odd Square (找规律)
大体题意:给你一个奇数n,求出一个n*n矩阵,使得n*n矩阵 每一行,每一列,和主对角线上的数字之和都是奇数!思路:这个题出的很晚了,刚开始一直在推n 是偶数怎么办,没有看到n 是奇数= =!又没看到要求对角线上也是奇数,交了发Wa!没想到最后还能改出来!其实这个题目分析下样例就可以看出规律了!他每一行奇数的个数是 1 , 3, 5 ,7 ,,n ,,7 , 5 , 3,原创 2016-08-23 10:14:09 · 349 阅读 · 0 评论 -
CodeForces 589D --- D. Boulevard (数学题目--枚举分类讨论)
D. Boulevardtime limit per test 2 seconds memory limit per test 512 megabytes input standard input output standard output Welcoming autumn evening is the best for walking along the boulevard原创 2016-08-10 23:56:16 · 602 阅读 · 0 评论 -
URAL 2070 Interesting Numbers (素数枚举)
大体题意:两个人,一个人认为一个数如果是素数的话,那么是符合要求的,另外一个人认为这个数的因子个数是素数的话,那么才是符合要求的!给你一个区间 [L,R],求出该区间内 同时符合两个人要求 或者同时不符合两人要求数的个数!思路:很有意思的一道题目!我们可以用间接法来求, 总数肯定是R-L + 1 可以求出符合一个但不符合另一个人数的个数 !我们很容易想到 如果这个数是素数原创 2016-08-22 21:37:43 · 583 阅读 · 0 评论 -
Codeforces Round #368 (Div. 2) -- C. Pythagorean Triples (数学公式)
C. Pythagorean Triplestime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputKatya studies in a fifth grade. Recently her cl原创 2016-08-21 01:56:29 · 564 阅读 · 0 评论 -
UVA - 11524 InCircle 内切圆 (数学)
题意:如图 有一个内切圆 告诉你内切圆的半径R, 并且三角形 比例知道 m1 : n1 m2 : n2 m3 : n3,注意 这些只是比例,并不是实际长度,刚开始以为一个大水题,结果样例都不对,错误的认为那是实际长度了!思路:需要知道一个内切圆的半径公式:因此我们设AB = m1 x + n1 x;可以将三角形三边表示出来!将三边带入内切圆半径公式即原创 2016-08-19 11:20:07 · 618 阅读 · 0 评论 -
UVA 11646 Athletics Track (简单数学题)
大体题意:如图:告诉你长和宽的比 为a : b 求出 长度和宽度的实际值!思路:令长为ax, 宽为bx!那么====》由于勾股定理:带入得:答案就是ax : bx了!代码:#include#include#include#include#includeusing namespace std;int main(){原创 2016-08-19 01:18:07 · 320 阅读 · 0 评论 -
HDU 3668 View Code (二重积分)
大体题意:求图中交叉圆柱体的体积!思路:真是充分反映了高数能力! 是真弱啊,,想了6,7个小时了,才想明白! = =T_T!!!!大体思路很明确,把两个圆柱的体积加起来 减去中间公共部分的即可!第一步首先得想到公共部分是一个怎样的图形。这个在高数下册例题中有讲到!中间实线部分就是第一卦限内的图形,显然一个二重积分就可以搞定:这种情况比较简单点,适合于2*R原创 2016-08-17 01:39:17 · 1009 阅读 · 0 评论 -
hdu 4497 GCD and LCM (唯一分解定理 + 计数)
GCD and LCM Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others)Total Submission(s): 2262 Accepted Submission(s): 1000Problem DescriptionGiven two positiv原创 2016-08-02 21:02:38 · 508 阅读 · 0 评论 -
Codeforces Round #365 (Div. 2) -- C. Chris and Road (思路水题)
C. Chris and Roadtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputAnd while Mishka is enjoying her trip...原创 2016-08-05 20:42:57 · 724 阅读 · 0 评论 -
Codeforces Round #199 (Div. 2) -- C. Cupboard and Balloons (数学)
C. Cupboard and Balloonstime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputA girl named Xenia has a cupboard that looks原创 2016-07-08 15:41:39 · 377 阅读 · 0 评论 -
POJ 3168 Barn Expansion (平面扫描)
Barn ExpansionTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 2305 Accepted: 607DescriptionFarmer John has N (1 <= N <= 25,000) rectangular barns on his f原创 2016-07-29 02:54:14 · 423 阅读 · 0 评论 -
POJ 3175 Finding Bovine Roots (枚举)
Finding Bovine RootsTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 4374 Accepted: 876DescriptionThe cows are trying to find their roots. They are not so原创 2016-07-28 18:20:47 · 415 阅读 · 0 评论 -
HDU 5895 Mathematician QSC (矩阵快速幂 + 逆元应用 + 指数循环节 + 欧拉函数)
大体题意:题意很简单 计算表达式x^g[ny] % (s+1)思路:这个题弄了两天了,查了好多知识点才搞定 = =!在看看g(n)的定义 g(n) = f(1)^2 + f(2)^2 + ... + f(n)^2;因为所以:多写几个就可以看出累加法:所以:因此,gn是可以递推出来的!公式是求x^g(n*y)% (s原创 2016-09-21 15:48:36 · 516 阅读 · 1 评论 -
HDU 5894 hannnnah_j’s Biological Test (组合数学 + 快速幂 + 乘法逆元)
大体题意:给你n 个座位,和m 个人, 安排在一个圆桌子上,要求任意两个人之间的座位至少为k 个,求方案数,答案对1e9取模?思路:我们先给m 个人放好,然后在每个人后在添加k 个座位,先保证至少k 个座位,然后会剩下 n - m - m*k个座位,在把剩下的座位插到已经存在的座位里。那么这个问题就可以转换为:你有n-m-m*k个球,要求放在m个不同的箱子里,有几种放法?如原创 2016-09-21 23:06:33 · 614 阅读 · 0 评论 -
HDU 5901 Count primes (Meisell-Lehmer算法 -- 模板)
题意:给你一个数n ,求1~n 之间素数的个数(n (Meisell-Lehmer算法) 看的别人的博客:http://www.cnblogs.com/Kurokey/p/5888386.html数组大小开到 sqrt n 就好了!#include #include using namespace std; #define LL long long co转载 2016-09-22 11:40:18 · 588 阅读 · 0 评论 -
HDU 6129 Just do it(多校7, 组合数 规律)
题意:给你一个数列, m次变换, 每次变换b[i] = a[1]~a[i]的异或值。 求最后的序列。思路:一个找规律的题目。考虑 每一个数对后面的数的贡献。先考虑a1:第一次变换: 1 1 1 1 1第二次变换: 1 2 3 4 5第三次变换: 1 3 6 10 15第四次变换: 1 4 10 20 35不难发现 每一行是 杨辉三角的斜边。所原创 2017-08-17 10:48:19 · 358 阅读 · 0 评论 -
POJ 1284 Primitive Roots (欧拉函数--求原根数量)
题意:给你一个奇素数P, 求有多少个x 满足 x^i %P 为0~P-1. 其中1 思路:这正是对原根的描述假设一个数g 对于P来说是原根,那么g^i mod P 结果两两不同,且有1 这个题是求原根数量为phi [ phi[n] ]个欧拉函数直接打表就好了#include #include #include using namespace std;int原创 2017-03-14 22:02:36 · 460 阅读 · 0 评论 -
UVA 1640 The Counting Problem(统计题,找规律 + dfs)
大体题意:告诉你两个数a和b 问你a到b 区间内的数中,0,1,2,3,4,5,6,7,8,9每个数字出现了几次?思路:我们先写一个暴力的程序会找到一个规律:除了0以外的9个数字:9以内有1个 = num[1]99以内有20个 = num[2]999以内的有300个 = num[3]9999以内的有4000个 = num[4]。。依次类推:我们可以根原创 2017-03-10 20:16:30 · 483 阅读 · 0 评论 -
HDU 5643 King's Game (约瑟夫环问题的变形 递推)
大体题意:有n 个人,进行比赛,第一轮比赛 从1开始报数,报到1的出局,第二轮报2,,,, 问最后谁没出局?思路:一看就是约瑟夫环问题的变型了。在简单记录一下思考的过程吧:n 个人 编号为0,1,2,,,,,n-1.假设这一局k-1 出局了。那么重新编号:k k+1 k+2,,,, n-1 0 1 k-20 1 2原创 2017-02-08 23:32:53 · 603 阅读 · 0 评论 -
HDU 5978 To begin or not to begin (简单博弈--找规律)
大体题意:给你k 个黑球和1个红球,两个轮流抽,抽到红球算赢,问先手赢的概率大还是后手大,还是概率相等?思路:写几个小的数手算一下 就看到规律了。如果k 是偶数的话,那么先手的概率是 ((n+2)/3)/(n+1) 大于后手的概率 输出1如果k 是奇数的话,那么先手后手概率都是1/2.#include #include #include using namespac原创 2017-02-08 20:23:54 · 953 阅读 · 0 评论 -
URAL 1081 Binary Lexicographic Sequence (递推 + 递归)
大体题意:定义一个合法的二进制序列为序列中没有两个1是相邻的,对于所有长度为n的合法序列按照字典序排序后(保留前导0),求第K大的串是多少?思路:我们先得求出一个n位的合法二进制的个数是多少!f[1] = 2;f[2] = 3f[3] = 5f[4] = 8这几个很容易算出来,然后我们就很明显的发现规律了,这是一个斐波那契数列!其实想一想确实这个样!你构造第原创 2017-01-12 15:37:12 · 353 阅读 · 0 评论 -
Codecraft-17 and Codeforces Round #391 (Div. 1 + Div. 2, combined) -- B. Bash's Big Day (唯一分解定理)
大体题意:给你n 个数,让你选出尽可能多的数来,使得gcd(x1,x2,x3,,,xn) != 1; 输出最大数量?思路:思路比较偏比较麻烦,参考一下把!gcd不是1的话,说明它们有共同的质因子!数据范围是 每个数都是10W以内! 素数也就1W个因此我们可以给每一个数进行质因子分解。给分解出来的质因子p 统计一下,vos[p]++,表示有一个数 是p这个素因子。原创 2017-01-13 18:19:47 · 446 阅读 · 0 评论 -
HDU 5974 A Simple Math Problem (数论,大连区域赛)
大体题意:给你a和b,让你求出X和Y,使得X + Y = a lcm(x,y) = b思路:看数据范围肯定不能进行暴力枚举了!令gcd(x,y) = g;那么g * k1 = x;g * k2 = y;因为g 是最大公约数,那么k1与k2 必互质!=> g*k1*k2 = b=> g*k1 + g * k2 = a;所以k1 * k2 =原创 2016-12-09 14:56:51 · 2741 阅读 · 6 评论 -
UVA 11300 Spreading the Wealth (思路题目)
大体题意:坐在圆桌上有n 个人,没人有一定数量的金币,你的目的是使得没个人的金币都一样,你的分金币方法是可以把手里的金币分给相邻的人,问最少分的数量!思路:很巧妙的一道题目,书上说的很详细,简单记录一下!假设每个人的金币数量是a1,a2,a3,,,,an,第一个人得到的金币数是 x1, 第二个得到的金币数是x2,,,,,,依次类推:会得到一个等式:(拿样例举例子)原创 2016-12-12 00:13:27 · 441 阅读 · 0 评论 -
Codeforces Round #382 (Div. 2) -- C. Tennis Championship (数学找规律 -- 斐波那契数列)
大体题意:n 个人进行比赛,问你一个做多打多少场比赛? 两个人进行比赛,它们比赛场次之差不差过1,否则不能打,一旦一个人打比赛输了,就不能继续往后打了!思路:很水的一道题目,想复杂了!其实是一个找规律的题目。当你写出几个数据来后,就能猜出来了:2 3 4 5 6 7 8 9 10 11 12 131 2 2 3 3 3 4 4 4 4 4 5下面同一类的个原创 2016-11-29 00:25:23 · 558 阅读 · 0 评论 -
Codeforces Round #382 (Div. 2) -- D. Taxes (数学 -- 哥德巴赫猜想, 唯一分解定理)
大体题意:你有n元钱,你需要交税,交锐的价格为n 的最大因子(不等于n),为了缩小税钱,你可以拆成多个钱相加的形式,但是不能拆出1来,问你最少交多少钱?思路:肯定是全都是素数最好了,那么问题就是把n 拆成多个素数之和的形式!根据哥德巴赫猜想,任何大于2 的偶数必定写成两个质数相加的形式!因为我们判断 如果n 本身时素数直接输出1如果不是素数, 是偶数的话,直接输出2如原创 2016-11-29 00:19:36 · 907 阅读 · 0 评论 -
UVALive 7040 Color (容斥定理 + 递推求逆元 + 组合数 + 快速幂)
大体题意:给你n 个位置,你总共有m 种颜色,需要填满恰好填k种颜色且 相邻的位置的颜色不相同,问方案数,两个方案不同 区分为至少有一个位置的颜色的不同!思路:我们先选出k 种颜色来, 方案数 是 C(m,k)。然后在n 个位置依次填, 第一个位置 有k 种情况,第二个位置 有k-1个情况 第三个位置有k-1个情况!这样就是k*(k-1) ^ (n-1) 这些情况只是原创 2016-11-10 19:09:22 · 505 阅读 · 0 评论 -
HDU 1664 Different Digits (数论 -- 鸽笼原理 + BFS搜索 + 余数判重)
大体题意:给你一个数字n,让你找出它的一个倍数m,使得m中不同的数字尽可能的少,如果有多解,输出最小的一个!思路:肯定是搜索的题目,我们得先考虑数字m 不同数字的种类个数,以便缩小搜索范围。这里巧妙的运用了鸽笼原理,举个简单的小例子来说明这个原理,如果让你选择一个月份的话,你选择13次肯定有两次是重复的,这个题目同样也是,我们选择n+1个数字,肯定有两个数对n取模是相同的。我们这样原创 2016-11-09 00:23:50 · 476 阅读 · 0 评论 -
UVA 12169 Disgruntled Judge (扩展欧几里得)
大体题意:给你n 个数 x1,x3,,,x2n-1让你确定出x2,x4,,,x2n来!x数列每一项满足 xi = ((x(i-1) * a ) + b ) % 10001;思路:我们枚举a,因为对10001取模,所以a肯定在0~10000以内有解!那么我们就枚举a,对于每一项a,我们根据x3和x1求出b来,然后开始枚举每一项看看这个a和b 是否合适!合适就输出终止枚举!原创 2016-10-26 23:54:41 · 451 阅读 · 0 评论 -
UVALive 6655 Two Points Revisited (思路--构造垂直线段)
题意:给你一个线段的两个端点,有一个正方形,恰好包含这个线段,求另外一个线段的两个端点,使得它们垂直这个线段,并且不超过正方形?思路:方法借鉴的队友的,很巧妙!我们知道 两个直线垂直 条件是 两个直线斜率乘积为-1,因此,我们先假设两个点为x,y 和 u,v那么那么满足k1 = (y-v)/ (u-x)因此,我们先假设y = x1-x2,x = y2-y1, u = x原创 2016-09-28 00:48:05 · 250 阅读 · 0 评论 -
Canada Cup 2016 B. Food on the Plane (数学)
大体题意:给你行号和列号,其中列号为a~f ,有两个服务员同时从1 行和3行出发,求到达你的位置 最少的时间!(还有很多细节,仔细读读不难理解!)思路:一个比较水的数学题:因为一个服务的话,他们能服务四行!因此你要先算出你的行号包括了几个四行!然后在通过取模算出你是被第几个服务员服务的,分类讨论计算一下即可!注意 服务同一行的顺序 是 f e d a b c详原创 2016-10-24 11:53:51 · 404 阅读 · 0 评论 -
Gym 100962G Green Day (构造无向图 -- 找规律)
大体题意:你有k 个颜色可以给图进行染色,每个颜色都需要染出一个生成树来,需要任意两个颜色 和任意两个节点所在的路 交集为那两个节点,这句话的意思比较难懂,仔细想想也就明白,他是让每两个节点都有一条边,即这个题目可以转换成: 你用k 个生成树构成一个完全图! 不准有自环和平行边!思路:比赛时没有做出来,赛后补得!其实这个题目的样例已经点明了思路:n 个点的完全图有n(n-1)原创 2016-09-25 19:51:40 · 677 阅读 · 0 评论 -
HDU 4588 Count The Carries (数学-- 二进制技巧枚举)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4588大体题意:给你两个十进制数字a和b ,求得二进制数从a 加加 一直加到b 总共二进制进位多少?思路:比赛时没有做出来,请教的同学:不过思路的确很巧妙:既然是求和,那么我们不妨先把这些数摆出来看看规律:0 00001 00012 00103原创 2016-07-28 11:12:06 · 428 阅读 · 0 评论 -
Codeforces Round #358 (Div. 2) -- A. Alyona and Numbers(暴力水题)
A. Alyona and Numberstime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputAfter finishing eating her bun, Alyona came up w原创 2016-07-06 14:59:34 · 412 阅读 · 0 评论