卡特兰数(Catalan UVa 991 10303 10007 1478)

一、介绍         卡塔兰数是组合数学中一个常在各种计数问题中出现的数列。以比利时的数学家欧仁·查理·卡塔兰(1814–1894)命名。         历史上,清代数学家明安图(1692年-1763年)在其《割圜密率捷法》最早用到“卡塔兰数”。         卡特兰序列的前11项为:1...

2014-09-12 17:17:58

阅读数:1453

评论数:2

幻方(UVa 10087 - The Tajmahal of ++Y2k)

题目:幻方构造,给你n*n的方形,在里面填上连续的数字,使得每行、每列和对角线上的数字和是m。 分析:数学、构造。幻方的构造方法已经完全被解决,直接利用公式求解即可。             幻方的幻和为:p =(n*n+1)* n / 2             如果 m = k*n + p 则...

2014-05-12 20:35:43

阅读数:1146

评论数:0

UVa 126 - The Errant Physicist

题目 计算多项式乘法,按照x的递减,y的递增序输出。 分析 模拟。这里分成三个部分:1.将字符串分解成不同的单元(axmyn为一个单元)构成的多项式;2.计算乘法,并且排序,合并同类项;3.按照特定格式输出。 说明 注意系数和指数为0的情况。。。 #include &l...

2018-12-06 16:25:55

阅读数:36

评论数:0

UVa 10602 - Editor Nottoobad

题目 一个编辑软件可以接受两种语音命令,复制最后一个单词或者删除最后一个字母,单词间的空格会自动生成。这个软件公司举办了一个打字比赛,有一组单词,并且从第一个单词开始打,其他的单词顺序可以改变,输入字母最少的人获胜。 分析 数据结构,字典树(Trie)。将单词列表构造成一个字典树。字典树的边...

2018-12-01 16:46:38

阅读数:8

评论数:0

UVa 11287 - Pseudoprime Numbers

题目 判断一个数是不是为伪素数。能够通过费马测试的合数。 分析 数论,直接按照定义判断即可。 说明 学python,ヾ(◍°∇°◍)ノ゙ import math def is_prime(x): for i in range(2, int(math.sqrt(x))+2): ...

2018-11-28 11:55:44

阅读数:14

评论数:0

UVa 11951 - Area

题目 有一个矩阵构成的土地,每块地的价格不一样,现在有K单位的钱,问最多能买多大的地。要求地是一个整块的矩形。 分析 动态规划。二维最长子序列。 辅助定义 s(k, i, j) = P[k][j] + … + P[i][j]。为矩阵第j列的第k到第i个元素的和; 定义状态 f(k, i, j...

2018-11-27 20:29:13

阅读数:19

评论数:0

UVa 11309 - Counting Chaos

题目 求给定时间后的最近的回文时间。 分析 模拟。打表计算,枚举输出。 说明 ε=(´ο`*)))唉 #include <stdio.h> #include <stdlib.h> int pali...

2018-11-15 15:55:21

阅读数:20

评论数:0

UVa 10730 - Antiarithmetic?

题目 一个由0~n-1构成的序列,问其中是否存在3个元素的等差子序列。 分析 枚举。打表记录每个元素的位置,枚举前两个元素,判断第三个元素的位置。 说明 感觉O(n2)O(n^2)O(n2)还是有点勉强,还没想到别的方法,枚举观察找性质? #include <st...

2018-11-15 11:28:55

阅读数:17

评论数:0

UVa 665 - False coin

题目 有N个硬币,其中有一个假的(重量和别的不同),给出一些用天平测试的结果,判断哪个硬币是假的。 分析 枚举。每个硬币各枚举两次(比其他轻,比其他重,这里可以通过给其他硬币赋值+1,或-1,有问题的为0解决)。 说明 继续看论文。。。ε=(´ο`*)))唉 #include &...

2018-10-26 10:29:42

阅读数:26

评论数:0

UVa 11752 - The Super Powers

题目 求解64位无符号整数的可以拆解成不同指数的数字。 分析 数论。枚举以2-65535的数字为底数,2-64为指数的所有组合,取合法的存储,排序去重即可。 说明 需要将数字分成两段存储(每个10位),避免溢出。 #include <algorithm&a...

2018-10-16 20:56:15

阅读数:24

评论数:0

UVa 1595 - Symmetry

题目 判断一个平面上的点是不是关于某条竖线对称。 分析 计算几何。首先利用所有点的横坐标的和计算出折线对应的x,然后将左右分成两组,将x坐标转化成相对折线的距离,排序比较输出。 说明 好多书和论文要看,还要学英语。。。ε=(´ο`*)))唉 #include <a...

2018-10-14 19:02:12

阅读数:6

评论数:0

UVa 11090 - Going in Cycle!!

题目 求一个有向图中的平均边长的最小的环。 分析 图论,最短路。二分平均边长,然后所有边长减去二分的值,利用最短路判断是否有负权回路。这里使用floyd求解。 说明 注意自身是环的节点。 #include <stdio.h> #include...

2018-10-08 19:26:08

阅读数:12

评论数:0

UVa 11258 - String Partition

题目 将一个数字串拆分成不超过32位有符号整形(2147483647)的数组,求他们的和的最大值。 分析 动态规划(DP)。区间动态规划,按照区间长度更新即可。 预处理:设a(i,j)为从i开始到j结束的数字串的值,如果超过2147483647则为0; 状态定义:f(i,j)为区间[i, j...

2018-10-01 11:49:10

阅读数:21

评论数:0

UVa 12347 - Binary Search Tree

题目 已知一颗BST的前根序序列,输出它的后根续序列。 分析 数据结构。按照输入的顺序建立BST,并使用递归输出即可。 说明 开始把output函数的返回值写成int,然后已知RE,编译器优化问题? #include <cstdlib> #i...

2018-09-23 13:55:12

阅读数:21

评论数:0

UVa 11857 - Driving Range

题目 设计电动汽车的电池容量,已知有n个城市,每个城市都有充电站,m条双向道路(可能两个城市间有多条道路),求最小的电池容量。 分析 最小生成树。利用kruskal算法,记录最后加入树的边长即可;如果并查集中的节点数量不是城市数量,则有的城市不连通,输出IMPOSIBALLE。 ...

2018-09-21 14:48:50

阅读数:32

评论数:0

UVa 501 - Black Box

题目 有一个数据库,有两种操作:ADD(x),将数字x插入到数据库中;GET返回第i个元素,i初始为1,每次使用GET先将i增加1再查询。 分析 数据结构,首先利用离散化将数据映射到1~M,然后使用线段树进行存储和查找,记录每个区间的数据个数方便查询。 说明 注意数据中有M为0的情况,这...

2018-09-19 22:01:26

阅读数:19

评论数:0

UVa 12160 - Unlock the Lock

题目 开密码锁,有R个按钮,每次按对应的按钮,密码会增加对应的值,已知初始状态和开锁的密码,问最少的按钮次数。 分析 最短路,bfs。直接利用bfs搜索即可。 说明 1000题了,✿✿ヽ(°▽°)ノ✿ 还要考ieltso(╯□╰)o #include...

2018-08-09 13:54:08

阅读数:26

评论数:0

UVa 11965 - Extra Spaces

题目 将字符串中连续的空格合并成一个。 分析 模拟。用两个指针模拟即可。 说明 第999题了。。。 #include <stdio.h> #include <stdlib.h&...

2018-08-08 20:02:31

阅读数:42

评论数:0

UVa 11093 - Just Finish it up

题目 有N个加油站构成一个环形,每个加油站可以加ai的油,从第i个加油站走到第i+1个需要消耗bi的油。问按照顺序从哪个加油站开始可以走一圈回到出发点。初始没有油。 分析 贪心。计算出每个点的净值:c[i] = p[i] - q[i]。有点像最大子段和,保存当前区间的起始点和走...

2018-08-08 16:13:50

阅读数:37

评论数:0

UVa 735 - Dart-a-Mania

题目 飞镖游戏,有三个飞镖,靶子上面分成1-20的分数,每个区域的分数可能是对应分数的1,2,3倍。中心50分,不在靶子上0分。问对应x分数有多少种分数组合与排列。 分析 枚举。这里没有要求最后为倍数,直接把0-20的1-3倍去重打成表,然后枚举即可。 说明 雅思...

2018-08-08 14:05:48

阅读数:32

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭