
数学
文章平均质量分 69
KinderRiven
这个作者很懒,什么都没留下…
展开
-
【HDU 5312】Sequence(数学问题)
学了下三角形数的性质:1.任意一个数都可以由三个三角形术表示2.任何三角形数 * 8 + 1得到一个平方数3.验证三角形数的公式:n = (sqrt ( 8 * X + 1 ) - 1) / 2如果为三角形数那么n为整数切为第n个三角数具体连接:http://baike.baidu.com/view/1047488.htm#include#include#原创 2015-07-27 16:55:25 · 820 阅读 · 0 评论 -
[UVA]11524 - InCircle
基础题。atan() 返回的是 弧度,而不是角度#include #include #include #include #include #include #include #include #include #include using namespace std;const double eps = 1e-10;#define _PI acos(-1.0)in原创 2014-08-31 14:21:21 · 588 阅读 · 0 评论 -
【UVA】11524-InCircle(公式推导)
公式推导原创 2014-08-31 16:20:07 · 7948 阅读 · 0 评论 -
11178 - Morley's Theorem【几何】
不涉及什么算法,只是简单的套用模板进行计算。如果一个向量进行逆时针旋转,那么可以使用定义的函数 Rotate(v,rad)进行计算。但是如果进行顺时针旋转,那么需要将rad改为-rad,也就是Rotate(v,-rad)进行计算。精度的控制为 1e-10;1411224311178Morley's TheoremAcceptedC原创 2014-08-29 19:15:57 · 781 阅读 · 0 评论 -
[UVA]11800-Determine the Shape(计算几何)
计算几何原创 2014-08-30 21:34:39 · 756 阅读 · 0 评论 -
【UVA】1342 - That Nice Euler Circuit(几何+欧拉定理)
E 为边数 ,V 为点数,F为面数那么 F = E + 2 - V(其中包括了一个无限大的面)这道题被自己的习惯坑了一下#define MAXD 300 + 10 和#define MAXD 310 是不一样的141132351342That Nice Euler CircuitAcceptedC++0.0822014原创 2014-08-29 23:15:20 · 747 阅读 · 0 评论 -
【UVA】11440 - Help Tomisu
又是一道不明觉厉的题,做这道题需要分析以下几个点:1.如果k的任意素因子大于M,那么说明k和M!一定互质。原因:任何数都可以写成一个唯一分解式子:k = p1^a1 * p2^a2 * ……;(p1 那么如果k的任意素因子大于M,那么说明 p1 > M, 又因为 M! = 1 * 2 * …… * M;所以k和M!一定没有除了1以外约束。2.欧拉公式:小于一个数(n)的所有质因子原创 2014-08-15 16:56:00 · 1109 阅读 · 0 评论 -
【UVA】1210 - Sum of Consecutive Prime Numbers
普通的求区间连续和的问题,一开始因为是区间移动,但是怕UVA数据太严,直接打表,后来发现自己的担心是多余的。140449721210Sum of Consecutive Prime NumbersAcceptedC++0.0492014-08-15 10:30:11打表的话效率可能不是很高.AC代码:原创 2014-08-15 18:29:27 · 1206 阅读 · 0 评论 -
【UVA】11040 - Add bricks in the wall(找规律)
一道找规律的题,可以看出,大的三角形可以划分成好多个三层的三角形:【x】【a】【x-a】【y】 【 】【z】 这里面xyz都已知,所以可以求出a = (x + y - z ) /21404361511040Add bricks in the wallAcceptedC++0.0192014-08-15原创 2014-08-15 14:02:23 · 1185 阅读 · 0 评论 -
【UVA】10213 - How Many Pieces of Land ?(大树模板X2)
从网上COPY下来的2个模板:原创 2014-08-15 11:37:56 · 994 阅读 · 2 评论 -
【UVA】11437 Triangle Fun(简单几何)
uva 简单几何原创 2014-08-30 11:34:09 · 862 阅读 · 0 评论 -
【UVA】11796 - Dog Distance(相对运动)
几何、向量计算原创 2014-09-01 17:21:26 · 953 阅读 · 0 评论 -
【HDU】2817-A sequence of numbers(快速幂)
对于两种序列一种等比,一种等差如果是等比 ak = a1 + (k - 1) * d 直接用((a1 * mod) + ((k - 1) % mod) * (d % mod)) % mod求就可以了如果是等差 ak = a1 * q ^(k - 1) 利用快速幂求出q ^(k - 1)可以得到结果#include#include#include#includeusing nam原创 2015-06-04 13:55:07 · 700 阅读 · 0 评论 -
【CodeForces】A. Mike and Frog
A. Mike and Frogtime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputMike has a frog and a flower. His frog is n原创 2015-05-27 21:58:00 · 1493 阅读 · 0 评论 -
【第七届山东省ACM竞赛】Square Number
思路比较明确,就是一个数,如果和另外一个数乘起来是个平方数的话,那么满足一个条件数A可以分解成为n1 个 a1,n2 个 a2 ……数B可以分解成为m1个 a1,m2 个 a2……这满足的条件是(ni + mi) % 2 == 0一个数的分解出来奇个数的因子乘起来得到的值为v,找之前有几个数他的奇个数因子成积为v代码如下:#include#include#include原创 2015-05-27 22:35:27 · 1613 阅读 · 0 评论 -
【POJ】3070Fibonacci(矩阵快速幂)
矩阵快速幂求斐波那契数#include#include#include#includeusing namespace std;typedef long long LL;const int maxn = 2;const int mod = 10000;LL n;struct Matx{ int mat[maxn][maxn]; Matx(){ m原创 2015-05-14 17:52:59 · 750 阅读 · 0 评论 -
【Codeforces】542C - Idempotent functions(思路)
题目大意思:给定一个数的next值,问最小的k值,使得每次进行k次操作得到的数都是一样的。将每个位置i记为点i记circle[i]为从i出发出现环的环内元素,我们的任务就是求这些数的最小公倍数lcm,还要考虑‘6’型循环的情况,这个我们只需要求最大的多余长度之后对lcm向上取整就好了#include#include#include#includeusing namespac原创 2015-05-15 09:41:46 · 1311 阅读 · 0 评论 -
10347-Medians【又是公式推导!】
推了半天没推出来,弃疗了 TAT看了题解,这尼玛是什么啊啊啊啊啊啊啊啊啊……(此处虐去2^31 - 1个字)是个公式,记下来就好了#include #include #include #include using namespace std;double area(double x,double y,double z){ double p = (x + y + z)原创 2015-03-25 17:50:01 · 707 阅读 · 0 评论 -
UVa 294 - Divisors
通过这道题学到了2个知识:1.一个数的质因子一定小于等于这个数的开根2.一个数的因子(约数)数等于 π(各质因子数+1)#include#include#include#includeusing namespace std;const int maxn = 55555;//#define DEBUGint vis[maxn];int prime[maxn];int c原创 2015-03-18 12:21:30 · 654 阅读 · 1 评论 -
10943 - How do you add?(隔板法)
这个问题可以简化成在把N个球放在K个箱子里的方法个数,由于每个箱子可以是空的,所以我们不妨多加K个球,这样就可以至少保证一个箱子有一个球,之后用隔板法对N + K 个球进行分割,也就是在N + K - 1 个空位中选择K - 1位置 C(N + K - 1,K - 1)求解方法递推就可以了。另外: 排列数 A(m,n)=m(m-1)(m-2)……(m-n+1)= m!/(m-n)原创 2015-02-23 13:26:42 · 734 阅读 · 0 评论 -
【HDU】 1018 Big Number
大意就是求 log10(n!) = log10(1 * 2 * 3 * .......*n) = log10(1) + log10(2)原创 2014-10-12 10:58:15 · 808 阅读 · 0 评论 -
欧拉公式
LRJ算法入门经典第二版上面写错了,害得我想了半天。。。V : 点数, E :边数 F :面数欧拉公式 V - E + F = 2;V = n + n / 4 sum(i * (n - 2 - i)); [ 0 E = n + n / 2 sum((i * (n - 2 - i ) + 1); [ 0 代码实现:#include#include#include#原创 2014-08-14 19:56:29 · 925 阅读 · 0 评论 -
【UVA】12034-Race(递推,组合数打表)
递推公式,假设第一名有i个人并列,那么:f[n] = C(n,i) * f[n - i];打出1 ~ 1000的所有组合数,之后记忆化搜索,需要打表。1402699512034RaceAcceptedC++0.0322014-08-12 11:47:47#include#include#incl原创 2014-08-12 19:51:13 · 803 阅读 · 0 评论 -
【UVA】10288-Coupons(概率)
做数学简直无爱,用sp原创 2014-08-13 19:03:52 · 535 阅读 · 0 评论 -
Mint-10717
交上去之前我自己觉得我都不对,没想到能AC,后台shuj原创 2014-05-22 21:26:16 · 476 阅读 · 0 评论 -
UVa 10820 Send a Table (Farey数列&欧拉函数求和)
这里先说一下欧拉函数的知识吧,F(n)为在原创 2014-05-23 09:14:59 · 553 阅读 · 0 评论 -
求n!末尾0的个数以及 最末尾 1的位置
首先先说0个数,就是求n!原创 2014-05-31 12:09:55 · 765 阅读 · 0 评论 -
10105 Polynomial Coefficients 组合数打表
#include#include#includeusing namespace std;#define N 13#define MAXD 100 + 10int C[N][N];void Get_C(){ memset(C,0,sizeof(C)); for(int i = 0; i < N ; i ++){ C[i][0] = C[i][i] = 1;原创 2014-05-31 12:10:30 · 713 阅读 · 0 评论 -
POJ Round and Round We Go 大数位乘法
题目的意思比较好理解:给一个n位的数,ra原创 2014-06-08 11:03:11 · 633 阅读 · 0 评论 -
POJ-1001 高精度求幂
赤裸裸的大数,这题比较谁原创 2014-05-16 09:00:38 · 1183 阅读 · 1 评论 -
简单取石子游戏~博弈
很坑爹的小游戏,至于怎么坑爹,嘎嘎~自己研究去吧~!#include#include#include#include#includeusing namespace std;void Loc(int x,int y);/*定位光标*/void Welcome(); /*创建欢迎界面*/void BuildMap();/*创建界面*/void GetNumber();/*获得测试的值原创 2014-03-25 17:40:43 · 690 阅读 · 0 评论 -
10006 Carmichael Numbers
从这道题里面学习了不少,一个是使用了我之前总结的快速求高次幂的模,第二个就是原创 2014-05-03 11:50:07 · 560 阅读 · 0 评论 -
序列- POJ
直接用的自己的大数模板#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define max(a,b) (a > b ? a : b)#define min(a,b) (a < b ? a : b)#define MA原创 2014-05-20 12:30:40 · 433 阅读 · 0 评论 -
约瑟夫循环问题uva305 Joseph
闲的无聊去找了道数据结构专栏的题目。。。TMD没想到是道数学题。。。模拟根本出不来。。。正好补了一下约瑟夫玄幻原创 2014-05-15 00:02:37 · 547 阅读 · 0 评论 -
高次幂求模
参考资料:(模运算)http://baike.baidu.com/view/2385246.htm (神牛总结):http://blog.youkuaiyun.com/jixuan1989/article/details/6759365 (uva例题分析):原创 2014-04-19 17:09:39 · 1210 阅读 · 0 评论 -
【UVA】11181 - Probability|Given(条件概率)
一道条件概率题,数学烂真的伤不起,一开始都不知道怎么求条件概率。P(e) = p(e|E)/p(E).用e出现的情况的概率,除以所有情况出现的概率,递归枚举每个人是否买东西了。1402605811181Probability|GivenAcceptedC++0.1022014-08-12 08:25:51原创 2014-08-12 16:27:59 · 835 阅读 · 0 评论 -
【UVA】580-Critical Mass
根据递推公式计算,需要打表不然可能会超时。#include#include#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define _PI acos(-1.0)#define原创 2014-08-12 18:07:52 · 824 阅读 · 0 评论 -
【UVA】12716-GCD XOR
做出做道题需要注意2个地方:首先可以打表找规律,找到规律我们可以发现:1.如果gcd(a,b) = a ^ b = c,那么 b = a - c;既然这样我们可以枚举a,c,求出b之后判断 c 是否等于 a ^ b,那么如何枚举c呢?2.利用类似筛选素数的方法去枚举a,c首先c是a的约数,所以这道题我们需要枚举的其实是a的约数,但是约数也不好枚举,我们可以通过c去枚举a,我们通原创 2014-08-12 11:07:20 · 3196 阅读 · 0 评论 -
【UVA】11582 - Colossal Fibonacci Numbers!(快速幂)
利用快速幂解决问题原创 2014-08-11 15:39:37 · 507 阅读 · 0 评论 -
欧拉函数
定义:求小于n与n互素的整数个数。推导公式:ans = n(1-1/p1)(1-1/p2)..........(1-1/pk); 其中pi为n的质因子#include#include#include#include#include#include#include#include#include#include#include#include#include#原创 2014-08-12 12:26:09 · 795 阅读 · 0 评论