- 博客(22)
- 收藏
- 关注
转载 Vijos P1117 数的划分
描述将整数n分成k份,且每份不能为空,任意两份不能相同(不考虑顺序)。例如:n=7,k=3,下面三种分法被认为是相同的。1,1,5; 1,5,1; 5,1,1;问有多少种不同的分法。格式输入格式输入n,k (6输出格式一个整数,即不同的分法。样例1样例输入1[复制]7 3
2014-11-08 20:57:38
621
原创 Wikioi P1115 开心的金明
题目描述 Description金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间他自己专用的很宽敞的房间。更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过N元钱就行”。今天一早金明就开始做预算,但是他想买的东西太多了,肯定会超过妈妈限定的N元。于是,他把每件物品规定了一个重要度,分为5等:用整数1~5表示,第5等最重要。他还从因特网上查
2014-11-08 16:13:53
809
原创 Wikioi P1102 采药
题目描述 Description辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间,在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药
2014-11-08 15:44:11
1023
原创 Wikioi P3285 转圈游戏
题目描述 Descriptionn 个小伙伴(编号从 0 到 n-1)围坐一圈玩游戏。按照顺时针方向给 n 个位置编号,从0 到 n-1。最初,第 0 号小伙伴在第 0 号位置,第 1 号小伙伴在第 1 号位置,……,依此类推。游戏规则如下:每一轮第 0 号位置上的小伙伴顺时针走到第 m 号位置,第 1 号位置小伙伴走到第 m+1 号位置,……,依此类推,第n - m号位置上的小伙伴走
2014-11-07 18:23:53
476
原创 Wikioi P1197 Vigenère密码
题目描述 Description16 世纪法国外交家Blaise de Vigenère设计了一种多表密码加密算法——Vigenère密码。Vigenère 密码的加密解密算法简单易用,且破译难度比较高,曾在美国南北战争中为南军所广泛使用。在密码学中,我们称需要加密的信息为明文,用 M 表示;称加密后的信息为密文,用C 表示;而密钥是一种参数,是将明文转换为密文或将密文转换为明文的
2014-11-04 23:19:13
1197
原创 Wikioi P1137 计算系数
题目描述 Description给定一个多项式(ax + by)^k,请求出多项式展开后x^n y^m项的系数。输入描述 Input Description共一行,包含 5 个整数,分别为a,b,k,n,m,每两个整数之间用一个空格隔开。输出描述 Output Description输出共 1 行,包含一个整数,表示所求的系数,这个系
2014-11-03 22:51:57
583
转载 Wikioi P1135 选择客栈
NOIP2011 DAY1 第二题题目描述 Description丽江河边有 n 家很有特色的客栈,客栈按照其位置顺序从1 到n 编号。每家客栈都按照某一种色调进行装饰(总共k 种,用整数0 ~ k-1 表示),且每家客栈都设有一家咖啡店,每家咖啡店均有各自的最低消费。两位游客一起去丽江旅游,他们喜欢相同的色调,又想尝试两个不同的客栈,因此决定分别住在色调相同的两家客栈
2014-10-30 23:18:47
1086
原创 Wikioi P1067 机器翻译
NOIP2010 Day1 第一题题目描述 Description小晨的电脑上安装了一个机器翻译软件,他经常用这个软件来翻译英语文章。 这个翻译软件的原理很简单,它只是从头到尾,依次将每个英文单词用对应的中文含义 来替换。对于每个英文单词,软件会先在内存中查找这个单词的中文含义,如果内存中有, 软件就会用它进行翻译;如果内存中没有,软件就会在外存中的词典内查找,查出单词的中 文含义
2014-10-28 22:46:43
649
原创 Vijos P1347 乘积最大
#include typedef unsigned long long big;big f[41][31],num[41][41];char str[42];int maxxx(int a,int b){ if (a>=b) return a; return b;}int main(){ int i,j,l; int n,k;
2014-09-30 22:42:54
610
3
转载 石子合并问题
石子合并问题是最经典的DP问题。首先它有如下3种题型:(1)有N堆石子,现要将石子有序的合并成一堆,规定如下:每次只能移动任意的2堆石子合并,合并花费为新合成的一堆石子的数量。求将这N堆石子合并成一堆的总花费最小(或最大)。分析:当然这种情况是最简单的情况,合并的是任意两堆,直接贪心即可,每次选择最小的两堆合并。本问题实际上就是哈夫曼的变形。
2014-09-29 22:45:32
557
转载 wikioi P1048 石子归并
#include using namespace std;const int INF = 1 const int N = 205;int dp[N][N],sum[N],a[N];int getMinval (int a[],int n){ for (int i = 0;i for (int v = 1;v for (int
2014-09-29 22:45:31
443
转载 最短路问题(2)
上节课解决的最短路是在具有某些特点的图上进行的。对于更广泛的图,求最短路是有专门算法的。一 迪杰斯特拉(DIJKSTRA)算法它继承了广搜的“松弛”特性,是一种加权的松弛动归刷新算法。解决从一个定点出发到另一点或所有点的最短路问题。细致概念见百度百科,下面直接给出其矩阵存储形式的简化代码描述#includeusing namespace std;int main()
2014-09-28 22:48:52
743
转载 最短路问题(1)
从图中指定的一点出发走到某一目标点如果存在多种不同的走法,最短的是哪条路?其长度是多少?图论中解决上述问题的方法都属于最短路算法。由于图的特点不同、存储结构不同、确立算法的侧重方向不同,所以算法是多种多样的。一 无权图及树网在无权图中,路径长度只与路径上的点数有关,而与路径上的边权和点权无关。例如广搜那节课例题2“方格图上求从S到E的最短路”一题。不少多维(多分量)的图
2014-09-28 22:47:20
1937
原创 Vijos P1775 乌龟棋 题解
#include #include using namespace std;int score[41][41][41][41],chess[400];int N,M,cd[5]={0};int main(){ cin>>N>>M; int i,x; for (i=1;icin>>chess[i]; for (i=1;i<=M;i++) {
2014-09-28 22:41:07
863
原创 Vijos P1133 装箱问题 题解
#include#include#include#includeusing namespace std;int main(){int i,v,n,j;int a[1001];cin>>v>>n;for(i=0;i>a[i];int dp[20001];memset(dp,0,sizeof(dp));dp[0]=1;for(i=0;i{
2014-09-28 22:34:55
673
1
原创 Vijos P1098 合唱队形题解
#include using namespace std;int a[1001],f[1001],g[1001];int MaxLenA,MaxLenB,n,Maxans;int main(){ int n; cin>>n; for (int i=1;i>a[i]; // 分别求解以middle为中间点(1 // 1~middl
2014-09-28 22:29:12
714
转载 高精度算法
高精度加法:#include #include using namespace std;int main(){ char a[1001],b[1001]; int la,lb,i; int x[1001]={0},y[1001]={0},he[1002]={0}; int t=0; cin>>a>>b; la=str
2014-09-27 22:27:45
458
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人