- 博客(24)
- 收藏
- 关注
原创 uva 210 Concurrency Simulator
https://vjudge.net/problem/UVA-210#author=169074291这题就是模拟麻烦,涉及的数据结构并没有那么复杂关键是搞懂题意做模拟题,尤其是复杂的模拟题,一定不要看懂了就编,这样多半是过不了的,最好将问题分解,或者将解决这个问题的步骤一个一个的列出来,保证逻辑清楚,再去编多看一些别人写的程序是一个很不错的提高方法,可以学到很多技巧#include<ios...
2018-05-30 20:33:44 149
原创 uva147
https://vjudge.net/problem/UVA-147跟背包问题类似看代码就够了#include<iostream>#include<cstdio>#include<cstring>#include<string>#include<cstdlib>#include<algorithm>using na...
2018-05-30 10:14:04 192
原创 uva 11401
题目链接https://vjudge.net/problem/UVA-11401给你长度为1,2...n的边,可以构造出多少个三角形,每条边可以使用多次,构造出的三角形每条边不能相等刚开始碰到也是无从下手,暴力求解的话不出意外应该是过不了的,否则这题意义何在根据经验是要找出递推公式,怎么找呢?不管别的,先用fn表示边长最大为n可以构造出的三角形个数显然f1=f2=f3=0 f4=1 我们一定可以写...
2018-05-29 21:19:47 196 1
原创 uva 10648 dp+计数
题目链接 https://vjudge.net/problem/UVA-10648#include<iostream>#include<cstdio>#include<cstdlib>#include<cmath>#include<cstring>#include<iomanip>#include<strin...
2018-05-25 17:34:18 101
原创 uva 10007 卡特兰数+大数
题目链接https://vjudge.net/problem/UVA-10007不考虑节点之间的差异,即认为所有节点都是相同的令Fn表示n个节点的二叉树的不同形态的个数对于一个拥有n个节点的二叉树来说,假设它左子树有k个节点,那么右子树就有n-k-1个节点,那么就有Fk*Fn-k-1种情况,k的可能取值为0,1,2...n-1,根据加法原理,就有Fn=F0*Fn-1+F1*Fn-2+...Fn-1...
2018-05-25 12:00:38 291
原创 uva 10918 计数问题
题目链接看了几篇博客,只有这篇博客真正的把这个问题说清楚了大家可以参考一下 https://www.cnblogs.com/staginner/archive/2011/12/16/2290020.html这种题很大概率是要得到递推公式,但是怎么得到递推公式是个难点,首先考虑这样一个问题,我们怎么样拼出一个长度为x且无法用竖线分割的矩形(x为偶数),当x=2时,有三种拼法,很简单,那么当x>...
2018-05-24 22:58:31 140
原创 贝尔数,两类斯特灵数的计算公式
第一类斯特灵数:含正负值,其绝对值是包含n个元素的集合分作k个环排列的方法数目。递推公式 s(n,0)=0,s(1,1)=1,s(n,k)=s(n-1,k-1)+(n-1)*s(n-1,k)第二类斯特灵数:把包含n个元素的集合划分为正好k个非空子集的方法的数目。递推公式 s(n,k)=s(n-1,k-1)+k*s(n-1,k)贝尔数 Bn表示包含n个元素的集合的划分方法的数目递推公式 B0...
2018-05-24 13:19:17 1804
原创 错排递推公式
n个元素编号为1,2...n,求每个元素都不在自己位置的排列数设1,2...n错排的数目为Dn递推公式为Dn=(n-1)*(Dn-2+Dn-1) n>=3
2018-05-24 12:03:51 489
转载 NULL、空格串、空字符串、0的区别和NULL详解及拓展
转载自https://blog.csdn.net/zsheng_/article/details/77856907一、空字符串、NULL、空格串的区别: (1)先附上代码,来表示它们的区别: string str1=””; // 空字符串 str1.length( )= 0 string str2=NULL; // NULL string str3=...
2018-05-23 19:44:28 1089
原创 uva 10798 Let's Play Magic! 模拟
题目链接问题描述:略解决方法:按照魔术进行的顺序模拟即可AC代码#include<iostream>#include<cstdio>#include<cstdlib>#include<cmath>#include<cstring>#include<string>#pragma warning(disable:49...
2018-05-15 17:29:57 216
原创 uva10852 lessprime
本来是一道水题,但脑子一下没转过弯来,做题经验不足啊题目给出一个整数n,n满足px<=n<(p+1)x,其中x为质数且x<=n,p为任意整数,要你求出最大的x先打表求出10000以内的质数,对于任意一个n枚举小于等于n的质数x,另外,当你的n和x确定时,n-px的最大值就是n%x这个题有个坑,就是输入跟题目描述不符#include<iostream>#include...
2018-05-09 21:14:21 123
原创 有关素数类型的题的几个总结
一千以内的素数有168个,最大的素数为997一万以内素数有1229个,最大的素数9973十万以内素数有9592个,最大的素数为99991一百万以内的素数有78498个,最大的素数为999983一千万以内的素数有664579,最大的素数为9999991一般n以内的素数个数大约是n/ln(n)所有大于10的质数中,个位数只有1,3,7,9。...
2018-05-08 11:58:54 1256
原创 米勒拉宾素数测试模板
__int64 qpow(int a,int b,int r)//快速幂 { __int64 ans=1,buff=a; while(b) { if(b&1)ans=(ans*buff)%r; buff=(buff*buff)%r; b>>=1; } return ans;}bool ...
2018-05-07 20:49:36 183
转载 扩展欧几里德算法详解以及乘法逆元
扩展欧几里德算法: 谁是欧几里德?自己百度去 先介绍什么叫做欧几里德算法 有两个数 a b,现在,我们要求 a b 的最大公约数,怎么求?枚举他们的因子?不现实,当 a b 很大的时候,枚举显得那么的naïve ,那怎么做? 欧几里德有个十分又用的定理: gcd(a, b) = gcd(b , a%b) ,这样,我们就可以在几乎是 log 的
2018-05-07 14:04:22 489
原创 扩展欧几里得算法
ll exgcd(ll a, ll b,ll d, ll &x, ll &y) //扩展欧几里得算法{ if (!b) { d = a; x = 1; y = 0; } else { exgcd(b, a%b, d, y, x); y -= x * (a / b); }}
2018-05-06 21:55:36 128
原创 歌德巴赫猜想
In 1742, Christian Goldbach, a German amateur mathematician, sent a letter to Leonhard Euler in which he made the following conjecture: Every number greater than 2 can be written as the sum of three p
2018-05-06 18:03:33 376
原创 筛选法生成素数
1 埃拉托斯特尼筛法const int N = 1111111;int isprime[N], prime[N], num; //isprime为素数筛,prime为素数表,num为表长//埃拉托斯特尼筛法,复杂度为o(nloglogn)void mark_table(int n) //求n以内的素数{ num = 0; memset(isprime, 0, sizeof(is...
2018-05-06 16:13:37 107
原创 欧拉函数用法
欧拉函数用于求解小于等于n的与n互质的数的个数欧拉函数用字符φ表示,φ(n)表示n的欧拉函数欧拉函数具有几个重要的性质1 若n是素数,则φ(n)=n-12 若n是和数,则φ(n)3 若m与n互质,则φ(mn)=φ(m)*φ(n)4 性质3的推论若n为质数且m%n!=0则φ(mn)=φ(m)*(n-1)5 对于一个质数和正整数P,有φ(p^k)=p^k-p^(k-1)=p
2018-05-06 14:57:47 305
转载 字符串转化为数字的函数
C++字符串转化为数字的库函数1、atoi功 能:把一字符串转换为整数用 法:int atoi(const char *nptr);详细解释:atoi是英文array to integer 的缩写。atoi()会扫描参数nptr字符串,如果第一个字符不是数字也不是正负号返回零,否则开始做类型转换,之后检测到非数字或结束符 /0 时停止转换,返回整型数。 参 数: *nptr: ...
2018-05-04 14:06:02 6156
转载 字符串处理函数
void *memccpy (void *dest, const void *src, int c, size_t n);从src所指向的对象复制n个字符到dest所指向的对象中。如果复制过程中遇到了字符c则停止复制,返回指针指向dest中字符c的下一个位置;否则返回NULL。void *memcpy (void *dest, const void *src, size_t n);从s...
2018-05-04 14:05:23 131
转载 c++大数模板
#include<iostream> #include<cstring> #include<string> #include<iomanip> #include<algorithm> using namespace std;#define MAXN 9999#define MAXSIZE 10#define DLEN 4...
2018-05-04 12:05:49 402
原创 利用字典序生成下一个排列和组合的方法
bool get_next_permutation(string &s) //得到下一个全排列{ bool flag = true; int i = s.size() - 1; while (i > 0 && s[i - 1] >= s[i]) i--; //从后往前找到第一个正序,即s[i-1]<s[i] if (i == 0)...
2018-05-03 22:39:41 1422
原创 poj1577
Falling LeavesTime Limit: 1000MS Memory Limit: 10000K Total Submissions: 4521 Accepted: 2482 Description Figure 1Figure 1 shows a graphical representation of a binary tr...
2018-05-02 20:49:06 319
原创 poj1145
Tree SummingTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 8502 Accepted: 2094DescriptionLISP was one of the earliest high-level programmin
2018-05-02 14:21:59 149
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人