+ 数学
文章平均质量分 58
codekun
这个作者很懒,什么都没留下…
展开
-
POJ - 3070 Fibonacci 矩阵快速幂取模
FibonacciTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 9776 Accepted: 6964DescriptionIn the Fibonacci integer sequence, F0 = 0, F1 = 1, and Fn = Fn原创 2015-01-03 09:00:18 · 545 阅读 · 0 评论 -
UVaOJ 202 - Repeating Decimals
Repeating Decimals The decimal expansion of the fraction 1/33 is , where the is used to indicate that the cycle 03 repeats indefinitely with no intervening digits. In fact, the decimal原创 2014-10-19 15:24:47 · 1053 阅读 · 0 评论 -
HDUOJ - 2049 不容易系列之(4)——考新郎
Problem Description国庆期间,省城HZ刚刚举行了一场盛大的集体婚礼,为了使婚礼进行的丰富一些,司仪临时想出了有一个有意思的节目,叫做"考新郎",具体的操作是这样的:首先,给每位新娘打扮得几乎一模一样,并盖上大大的红盖头随机坐成一排;然后,让各位新郎寻找自己的新娘.每人只准找一个,并且不允许多人找一个.最后,揭开盖头,如果找错了对象就要当众跪搓衣板...原创 2014-12-21 08:12:56 · 721 阅读 · 0 评论 -
UVa 12627 - Erratic Expansion
这题关键就是递推公式,注意紫书上推的c(k)那里貌似有点问题,应该是c(k-1)。另外2^k方的计算可以用1#include using namespace std;using LL = long long;LL C[32] = {1};LL g(LL k, LL i){ if(i (1LL<<k)) return 0; if(k <= 0) return 1;原创 2015-03-15 15:52:07 · 606 阅读 · 0 评论 -
UVa 1210 - Sum of Consecutive Prime Numbers
高中数学数列方法做的,打表大法好,全程打表。计算一段数的和,用S(n~m) = S(m) - S(n-1)做的。#include using namespace std;const int maxn = 10001;bool isp[maxn];int cnt, p[2000], sum[2000], res[100000];void init(){ memset(原创 2015-03-02 16:40:57 · 473 阅读 · 0 评论 -
UVa 11040 - Add bricks in the wall
纯粹找规律的一小学数学题,空格处的数可有输入计算得出,每个6格三角形为一个计算单位。#include #include using namespace std;int tab[10][10];int main(){ int T; cin >> T; while (T--){ for (int i = 0; i <= 8; i += 2) for (int j = 0; j原创 2015-03-03 13:25:32 · 494 阅读 · 0 评论 -
UVa 10539 - Almost Prime Numbers
通过这题学习了线性筛法素数打表的方法,题目本身更像数学思考题。#include #include #include #include #include using namespace std;using LL = long long int;const int maxn = 1024000;bool check[maxn];LL pri[maxn], tot;void原创 2015-03-03 21:59:22 · 403 阅读 · 0 评论 -
UVa 11346 - Probability
纯粹数学题,推公式吧。注意边界处理精度控制就可以了。#include #include #define EPS 1e-7int main(){ int T; scanf("%d", &T); while (T--){ double a, b, S; scanf("%lf %lf %lf", &a, &b, &S); if (S - a *b >= EPS) puts("0.原创 2015-03-03 23:26:02 · 626 阅读 · 0 评论 -
UVa 1645 - Count
用打表的方法来做,蕴含着一种递推的思想。#include #include using namespace std;int n, res[1024];const int MOD = 1e9 + 7;void init() { res[1] = res[2] = 1; for (int i = 3; i <= 1000; ++i) for (int j = 1; j < i原创 2015-03-03 15:13:30 · 539 阅读 · 0 评论 -
UVa 557 - Burger
题目大意:有n个牛肉汉堡和n个鸡肉汉堡给2n个孩子吃。每个孩子在吃之前都要抛硬币,正面吃牛肉汉堡,反面吃鸡肉汉堡。如果剩下的所有汉堡都一样,则不用抛硬币。求最后两个孩子吃到相同汉堡的概率。正面不好思考,考虑最后两个孩子吃不同汉堡的概率。则根据概率相关知识,P(n) = (1 / 2) ^ (2n - 2) * C(n - 1, 2n - 2),由P(n)和P(n+1)的关系得到:P(n+1)原创 2015-03-04 10:05:59 · 437 阅读 · 0 评论 -
UVa 11582 - Colossal Fibonacci Numbers!
数学题,寻找斐波那契取模后的周期T,然后求Mod_Fib(a^b % T)即可。求a^b % T时要用快速幂来计算,详细方法为http://blog.csdn.net/kun768/article/details/42344897#include #include using LLU = unsigned long long;using namespace std;int Fib原创 2015-03-04 16:20:22 · 501 阅读 · 0 评论 -
UVA - 10976 Fractions Again?!
Problem A: Fractions Again?!Time limit: 1 secondIt is easy to see that for every fraction in the form (k > 0), we can always find two positive integers x and y, x ≥ y, such th原创 2014-12-12 23:38:58 · 548 阅读 · 0 评论 -
UVA - 1644 Prime Gap
The sequence of n - 1 consecutive composite numbers (positive integers that are not prime and not equal to 1) lying between two successive prime numbers p and p + n is called a prime gapof length n原创 2014-12-17 20:42:56 · 732 阅读 · 0 评论 -
UVA - 11809 Floating-Point Numbers
FFloating-Point Numbers Floating-point numbers are represented differently in computers than integers. That is why a 32-bit floating-point number can represent values in the magnitud原创 2014-11-26 08:50:55 · 915 阅读 · 0 评论 -
UVa 11526 - H(n) [数学]
这道题学校里的班级程序设计对抗赛决赛中就有这题,当时貌似只有一个人A出来,一头雾水,不知如何下手。其实现在看看AC的思路,当时还是飘出过来的,就是没有信心,按照这个思路写下去。思路就是找到所有n/i结果相同的区间[i, j],这样就省出不少时间了,不然会超时。#include using namespace std;typedef long long LL;inline LL H(原创 2015-02-14 15:40:18 · 644 阅读 · 0 评论 -
HDU - 2056 Rectangles
DescriptionGiven two rectangles and the coordinates of two points on the diagonals of each rectangle,you have to calculate the area of the intersected part of two rectangles. its sides are paralle原创 2014-12-24 08:46:56 · 512 阅读 · 0 评论 -
UVA - 12325 Zombie's Treasure Chest
A: Zombie's Treasure Chest Some brave warriors come to a lost village. They are very lucky and find a lot of treasures and a big treasure chest, but with angry zombies.The warriors a原创 2014-12-17 20:41:22 · 517 阅读 · 0 评论 -
HDU 1003 - Max Sum
从O(n3)的最普通的方法,用数学数列方法优化到O(n2),最后优化到O(n),终于AC了,最后的这个确实不好想。O(n3):#include #include using namespace std;int a[102400];int main(){ ios::sync_with_stdio(false); int T, kase = 0; cin >>原创 2015-02-19 20:21:41 · 388 阅读 · 0 评论 -
相等的尾数
相等的尾数Time Limit: 1 Sec Memory Limit: 128 MBDescription我们假设有一个整数K,需要你寻找两个自然数M和N(M>N),使得K^M和K^N(1000 末尾三位数相等,如果存在这样的M和N,则输出一组N+M的值,使得N+M尽可能小,否则输出"No Answer."Input输入有多组测试数据,每行为一个K值原创 2015-01-12 21:28:43 · 537 阅读 · 0 评论 -
快速幂运算
#include using namespace std;//一般方法int pow1(int a, int b){ int t = a; b--; while(b--) a *= t; return a;}//普通快速幂int pow2(int a,int b){ int res = 1; int base =原创 2015-01-02 21:47:00 · 923 阅读 · 1 评论 -
UVA - 264 Count on Cantor
Count on Cantor One of the famous proofs of modern mathematics is Georg Cantor's demonstration that the set of rational numbers is enumerable. The proof works by using an explicit enumer原创 2014-12-17 08:47:09 · 617 阅读 · 0 评论 -
POJ - 1222 EXTENDED LIGHTS OUT 高斯消元法
中文描述:Description给你一个5*6的矩阵,矩阵里每一个单元都有一个灯和一个开关,如果按下此开关,那么开关所在位置的那个灯和开关前后左右的灯的状态都会改变 (即由亮到不亮或由不亮到亮)。给你一个初始的灯的状态,问怎样控制每一个开关使得所有的灯最后全部熄灭。Input输入第一行整数N,代表有N组测试用例,每一组测试用例是一个5*6的矩阵,在5*6的矩阵里,0代表灯原创 2014-12-29 22:35:03 · 766 阅读 · 0 评论 -
HDUOJ - 2048 神、上帝以及老天爷
这个题,要用到错排递推公式,还有全排。还有,最近比赛啥的老是不爽,结果通过这个题竟然发现了自己的毛病,printf(“%lf”)输出double型怎么弄也是输出0.00,调试了半天,还以为C语言编译器犯病了。后来才知道输出时应该用f,无语了。发现自己太水了。。。好好努力吧。。#include #include using namespace std;long long in原创 2014-12-20 22:37:48 · 587 阅读 · 0 评论 -
UVa 11636 - Hello World!
最水的题,挺简单,用数学做的,刚开始判断负数写成了-1失误超时了.#include using namespace std;int main(){ int n, kase = 0; while(cin >> n, n > 0) printf("Case %d: %d\n", ++kase, (int)ceil(log2(n))); return原创 2015-03-14 15:16:16 · 437 阅读 · 0 评论