算法竞赛入门经典
算法竞赛入门经典部分习题题解
zhbbbbbb
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
UVA133 救济金发放 The Dole Queue
题目大意 题目描述 n(n<20)个人站成一圈,逆时针编号为 1~n。有两个官员,A从1开始逆时针数,B从n开始顺时针数。在每一轮中,官员A数k个就停下来,官员B数m个就停下来(两个官员有可能能停在同一个人上)。接下来被官员选中的1个或2个人离开队伍。 输入格式 输入n ,k ,m ,可能有多组数据,以 0 0 0结尾。 输出格式 输出每轮里被选中的人的编号(如果有两个人,先输出被A选中的)。输出的每个数应正好占3列。样例中的“ ␣ ”代表一个空格。 算法思路 模拟就行了 具体看代码 AC代码 #i.原创 2020-10-09 14:56:27 · 214 阅读 · 0 评论 -
UVA1588 换抵挡装置 Kickdown
题目大意 有a, b两个字符串判断是否能把其中一个字符串的各个字母重排,然后对26个字母做一个一一映射,使得两个字符串相同。也就是说每个字母都有唯一的映射。 因为读错题意一直WA 算法思路 只要将a, b出现的所有字母映射到两个数组中,然后对数组排序,看两个数组是否相等就可以了。 AC代码 #include <iostream> #include <cstring> #include <algorithm> #include <cstdio> #includ.原创 2020-10-08 16:10:32 · 135 阅读 · 0 评论 -
算法竞赛入门经典 UVa 1583 生成元
题目大意 如果x加上x的各个数字的和得到y,就说x是y的生成元。给出n(1 <= n <= 100000),求最小生成元。无解输出0。 解题思路 假设所求生成元为m,首先最简单的思路是使n从0枚举找到m的最小生成元,但很可惜本题会超时,此时我们自然就会想到打表的做法,只要从0到100000枚举每一个数n,把n当作某个数的最小生成元即可。 AC代码 #include <iostream> #include <algorithm> #include <cstring&.原创 2020-10-02 16:52:16 · 279 阅读 · 0 评论
分享