
数学--组合数学
文章平均质量分 50
XYZgoforit
这个作者很懒,什么都没留下…
展开
-
POJ 1085 Code (组合数学 求字符串对应编码)
题目链接POJ1850题目大意输出某个字符串str在字典中的位置,若不是字典中的字符则输出0。 字典中的单词如下图(单词中每个字母严格递增): 分析这是一道组合数学题。对于给定字符串str,首先判断其每个字母是否严格递增。 若是字典中的字符,可以先计算长度比str小的符合字典要求的字符串总数sum1,再计算长度等于str的符合字典要求的字符串总数sum2,sum1+sum2+1即为答案。 对原创 2017-03-08 21:55:43 · 399 阅读 · 0 评论 -
POJ 1496 Word Index (组合数学 求字符串对应编码)
题目链接POJ1496分析此题同POJ1850。 无非就是输入输出变多组。直接上代码。代码#include <iostream>#include <string>using namespace std;int c[27][27],len;void Make_C(){ for (int i=0;i<=26;i++) for (int j=0;j<=i;j++)原创 2017-03-08 22:00:49 · 342 阅读 · 0 评论 -
POJ 3252 Round Numbers (组合数学/数位dp)
题目链接POJ3252题目大意求给定整数区间内有多少个“round number”. “round number”指是指二进制形式下0的个数不少于1的个数的整数。分析首先这是一道区间统计问题,求[a,b]之间RN个数,答案即为b+1以内RN个数减去a以内RN个数(我这里说的以内指严格小于)。 因此,问题就转化求比整数n小的RN个数,用函数Count(n)表示。(n≤ 2,000,000,000)原创 2017-03-06 22:39:17 · 360 阅读 · 0 评论 -
POJ 1019 Number Sequence (数学+预处理 循环递增序列第k位数字)
题目链接http://poj.org/problem?id=1019题目大意有一串数字串,其规律为 1 12 123 1234 12345 123456 1234567 12345678 123456789 12345678910 1234567891011 123456789101112······k 输入位置n,计算这一串数字第n位是什么数字。分析大致思路就是将这一串数按循环节分组,确定第n原创 2017-03-10 21:28:40 · 842 阅读 · 0 评论 -
poj 1942 Paths on a Grid (求组合数)
题目链接POJ1942题目大意在一个尺寸为N*M的网格中(N,M均为无符号32位整数),求从网格左下角走到网格右上角有几种走法,如下图为两种符合要求的走法: 分析看到这道题会想用递推去做,但这里n与m都很大,用递推无论是时间复杂度还是空间复杂度都不能实现。 再仔细思考,不难发现,每一种方案中,都是n步向上走,m步向右走,即总步数确定,不一样的只是’右’和’上’出现的相对顺序。那么这个问题就相当于原创 2017-03-10 21:59:57 · 357 阅读 · 0 评论