![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法题
文章平均质量分 94
hopyGreat
这个作者很懒,什么都没留下…
展开
-
2016第七届蓝桥杯省赛c/c++ B组
第一题 :煤球数目题目叙述: 有一堆煤球,堆成三角棱锥形。具体: 第一层放1个, 第二层3个(排列成三角形), 第三层6个(排列成三角形), 第四层10个(排列成三角形), …. 如果一共有100层,共有多少个煤球?请填表示煤球总数目的数字。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。答案:171700规律比较好找,每层煤球的个数是(1+2+ ... + n) 也就是 (n...原创 2018-03-30 20:52:56 · 556 阅读 · 0 评论 -
hihocoder1014 Trie树
题目链接:http://hihocoder.com/problemset/problem/1014题目大意,给出了若干个串为字典,然后询问若干个串,问字典中有多少串是以这些串为开头的(前缀)#include <iostream>#include <string>#include <cstring>using namespace std;#define...原创 2018-03-28 17:15:36 · 334 阅读 · 0 评论 -
计蒜客 习题:糟糕的bug(Trie树)
题目来源:计蒜客https://www.jisuanke.com/minicourse/812/42071蒜头君作为蒜厂的工程师,在开发网站时不小心写出了一个 Bug:当用户输入密码时,如果既和自己的密码一致,也同时是另一个用户密码的前缀时,用户会跳转到 404 页。然而蒜头君坚称:我们的用户那么少,怎么可能触发这个 Bug……机智的你,能不能帮蒜头君确认一下这个 Bug 到底会不会触发呢?样...原创 2018-03-28 19:16:38 · 409 阅读 · 0 评论 -
hihocoder1032 最长回文子串
题目链接:http://hihocoder.com/problemset/problem/1032推荐讲解博客:https://segmentfault.com/a/1190000003914228#include <iostream>#include <string>#include <cstring>#define MAX_N 2000005us...原创 2018-04-12 15:05:57 · 119 阅读 · 0 评论 -
线段树
题目链接:https://www.nowcoder.com/acm/contest/105/H题目描述 n个桶按顺序排列,我们用1~n给桶标号。有两种操作:1 l r c 区间[l,r]中的每个桶中都放入一个颜色为c的球 (1≤l,r ≤n,l≤r,0≤c≤60)2 l r 查询区间[l,r]的桶中有多少种不同颜色的球 (1≤l,r ≤n,l≤r)输入描述:有多组数据,对于每组数据:...原创 2018-05-04 11:57:53 · 115 阅读 · 0 评论 -
2017第八届蓝桥杯国赛c/c++ B组
首先提下,题目可以在蓝桥杯官网中下载,提供一个传送门。一:标题:36进制对于16进制,我们使用字母A-F来表示10及以上的数字。如法炮制,一直用到字母Z,就可以表示36进制。36进制中,A表示10,Z表示35,AA表示370你能算出 MANY 表示的数字用10进制表示是多少吗?请提交一个整数,不要填写任何多余的内容(比如,说明文字)最简单做法:...原创 2018-05-17 18:50:29 · 768 阅读 · 5 评论 -
hihocoder 1121二分图一 · 二分图判定
题目链接:http://hihocoder.com/problemset/problem/1121描述大家好,我是小Hi和小Ho的小伙伴Nettle,从这个星期开始由我来完成我们的Weekly。新年回家,又到了一年一度大龄剩男剩女的相亲时间。Nettle去姑姑家玩的时候看到了一张姑姑写的相亲情况表,上面都是姑姑介绍相亲的剩男剩女们。每行有2个名字,表示这两个人有一场相亲。由于姑姑年龄比较大了记性不...原创 2018-05-18 16:49:22 · 212 阅读 · 0 评论 -
hihocoder 1122 二分图二 · 二分图最大匹配之匈牙利算法
题目链接:http://hihocoder.com/problemset/problem/1122描述上一回我们已经将所有有问题的相亲情况表剔除了,那么接下来要做的就是安排相亲了。因为过年时间并不是很长,所以姑姑希望能够尽可能在一天安排比较多的相亲。由于一个人同一天只能和一个人相亲,所以要从当前的相亲情况表里选择尽可能多的组合,且每个人不会出现两次。不知道有没有什么好办法,对于当前给定的相亲情况表...原创 2018-05-18 17:30:15 · 199 阅读 · 0 评论 -
快速幂
一、快速幂算出数 x 的 k 次方的值。普通求n次方的算法为o(n)效率较低。考虑加速幂运算的方法,如果 n = 2^k,可以将其表示为:x^n = ((x^2)^2)...只需要k次平方运算即可轻松求得。由此我们联想到,先将n表示为2的幂的和。n = 2^k1 + 2^k2 + 2^k3 + ...就有:x^k = x^(2^k1) + x^(2^k2) + x^(2^k3) + ...只要在依...原创 2018-04-27 21:18:51 · 1021 阅读 · 1 评论 -
加强版斐波那契数列(矩阵快速幂)
关于快速幂的讲解可以参见我的上一篇博客《快速幂》题目链接:又见斐波那契题目描述 这是一个加强版的斐波那契数列。给定递推式求F(n)的值,由于这个值可能太大,请对109+7取模。输入描述:第一行是一个整数T(1 ≤ T ≤ 1000),表示样例的个数。以后每个样例一行,是一个整数n(1 ≤ n ≤ 1018)。输出描述:每个样例输出一行,一个整数,表示F(n) mod 1000000007。示例...原创 2018-04-27 21:40:45 · 5136 阅读 · 4 评论 -
hihocoder 1127 二分图三·二分图最小点覆盖和最大独立集
题目链接:http://hihocoder.com/problemset/problem/1127描述在上次安排完相亲之后又过了挺长时间,大家好像都差不多见过面了。不过相亲这个事不是说那么容易的,所以Nettle的姑姑打算收集一下之前的情况并再安排一次相亲。所以现在摆在Nettle面前的有2个问题:1.姑姑想要了解之前所有相亲的情况。对于任一个一次相亲,只要跟参与相亲的两人交流就可以得到这次相亲的...原创 2018-05-18 20:48:56 · 146 阅读 · 0 评论 -
次短路(poj 3255 Roadblocks)
RoadblocksDescriptionBessie has moved to a small farm and sometimes enjoys returning to visit one of her best friends. She does not want to get to her old home too quickly, because she likes the scene...原创 2018-05-19 20:12:10 · 139 阅读 · 0 评论 -
poj 3169 Layout(最短路 · Bellman-Ford)
题目链接:http://poj.org/problem?id=3169LayoutDescriptionLike everyone else, cows like to stand close to their friends when queuing for feed. FJ has N (2 <= N <= 1,000) cows numbered 1..N standing al...原创 2018-05-20 11:10:42 · 237 阅读 · 0 评论 -
集合的整数表示
本文转自《挑战程序设计竞赛》 - p156 - 专栏: 集合的整数表示集合的整数表示在做一些算法题的时候经常需要表示一些集合的状态,如状压dp。 在程序中表示集合的方法有很多种,很直观的可以用数组直接模拟。 当元素个数较小时,可以考虑使用二进制码来表示(不超过32位时可以用int,不超过64时可以用long long)。集合{0,1, … ,n-1}的子集S可以用如下方式编码成...转载 2018-07-10 21:56:20 · 2676 阅读 · 0 评论 -
关于int变量的一些算法
1. int变量的二进制表示中“1”的个数例如:78= (0000 0000 0100 1110)b。所以 f(78) = 4。56 = (0000 0000 0011 1000)b。所以 f(56) = 3。int cnt = 0;while (n > 0) { cnt ++; n = n&(n-1);}2. int变量的二进制表示中最右边1的...原创 2018-12-03 21:40:05 · 2212 阅读 · 0 评论 -
几个经典的代码段(c/c++)
0. 预定义typedef long long ll;# c++11using ll = long long;1. 最大值int max(int a, int b) { return a>b?a:b;}2. 最大公约数int gcd(int a, int b) { while (a && b) { a>b?a%=b:b%=...原创 2019-09-01 16:30:42 · 794 阅读 · 0 评论 -
nyoj571 几种整数划分(动态规划)
题目链接:整数划分(三)整数划分(三)时间限制:1000 ms | 内存限制:65535 KB难度:5描述整数划分是一个经典的问题。请写一个程序,完成以下要求。输入多组输入数据。每组输入是两个整数n和k。(1 <= n <= 50, 1 <= k <= n)输出对于输入的 n,k;第一行: 将n划分成若干正整数之和的划分数。第二行: 将n划分成k个正整数之和的划分数。第...原创 2018-03-31 15:12:00 · 365 阅读 · 0 评论 -
计蒜客 2018 蓝桥杯省赛 B 组模拟赛(五)
A. 结果填空:矩阵求和(3分)给你一个n×n的矩阵,里面填充 1 到 n×n 。例如当 n 等于 3 的时候,填充的矩阵如下。1 2 34 5 67 8 9现在我们把矩阵中的每条边的中点连起来,这样形成了一个新的矩形,请你计算一下这个新的矩形的覆盖的数字的和。比如,n = 3 的时候矩形覆盖的数字如下。 24 5 6 8那么当 n 等于 101 的时候...原创 2018-03-25 19:51:18 · 537 阅读 · 1 评论 -
poj2528 Mayor's posters(线段树+离散化)
题目链接:http://poj.org/problem?id=2528由于数据范围很大,但实际需要用到的节点数并没有那么多;[1, 1000000]、[2, 1000001]这两个区间在这个问题中和[1, 3]、[2, 4]两个区间其实并没有什么不同,但是为了维护前一种情况所需要的线段树就是非常巨大的。因此需要用到离散化,所谓离散化就是在不改变数据相对关系大小的条件下,对数据进行相应的缩小。这里需...原创 2018-03-14 17:08:57 · 214 阅读 · 0 评论 -
1049. 数列的片段和
1049. 数列的片段和给定一个正数数列,我们可以从中截取任意的连续的几个数,称为片段。例如,给定数列{0.1, 0.2, 0.3, 0.4},我们有(0.1) (0.1, 0.2) (0.1, 0.2, 0.3) (0.1, 0.2, 0.3, 0.4) (0.2) (0.2, 0.3) (0.2, 0.3, 0.4) (0.3) (0.3, 0.4) (0.4) 这10个片段。原创 2017-03-13 12:44:57 · 942 阅读 · 0 评论 -
2018年全国多校算法寒假训练营练习比赛(第一场)G 圆圈
链接:https://www.nowcoder.com/acm/contest/67/G来源:牛客网题目描述 圈圈圆圆圈圈,lulu小朋友最近看喜羊羊看多了,老是受刺激就画圆圈,听到小于8的数字时,还会画出十分有规律的圆圈,现在你需要根据样例观察出规律,编写程序,根据输入的数字n(n<8),输出对应的圆圈。输入描述:第一行是样例数T(T<9)第2原创 2018-01-22 19:18:54 · 547 阅读 · 0 评论 -
nyoj 515 完全覆盖 II(状压dp)
完全覆盖 II时间限制:1000 ms | 内存限制:65535 KB难度:4描述有一天acmj在玩一种游戏----用2*1或1*2的骨牌把m*n的棋盘完全覆盖。但他感觉把棋盘完全覆盖有点简单,他想能不能把完全覆盖的种数求出来?由于游戏难度增加他自己已经没法解决了,于是他希望大家能用程序来帮他把问题解决了。输入有多组数据。每组数据占一行,有两个正整数n(0<...原创 2018-01-24 20:43:01 · 836 阅读 · 0 评论 -
poj2385 Apple Catching(动态规划)
题目链接:http://poj.org/problem?id=2385题目大意:fj有两颗长满苹果的苹果树,奶牛够不着树上的苹果,只能等苹果落地,苹果一旦落在地上即不能吃了,只有在下落的时候可以接住吃掉,奶牛一次只能站在一颗树下,但可以在两棵树间互相移动,但最多移动W次。会落下T个苹果。初始时奶牛在树1下面,但可以迅速移动到树2下面。动态规划的策略是:dp[i][j]的值为第i个苹果掉落时...原创 2018-03-07 10:34:35 · 204 阅读 · 0 评论 -
poj3616 Milking Time(动态规划)
题目链接:http://poj.org/problem?id=3616题目大意:奶牛Bessie准备在未来的N(1<=N<=1,000,000)小时内产奶,fj会来取M(1<=M<=1,000)次,每次取奶时间为 [s, e),产量为w。奶牛每产一次奶需要休息R小时(1<=R<=N)。问最大取奶量。动态规划:本题类型为区间权重dp。策略是按照取奶结束...原创 2018-03-08 14:24:43 · 241 阅读 · 0 评论 -
poj3280 Cheapest Palindrome(动态规划)
题目链接:http://poj.org/problem?id=3280题目大意:有一个字符串由N(1<=N<=26)种小写字母组成,长度为M(1<=M<=2000),在字符串中任意位置添加或删除字母使字符串变成一个回文串,添加和删除有一定的花费。求这个最小花费。动态规划策略:设dp[i][j]为字符串从 i 到 j 成为回文串的最小花费。dp[i][j]可能...原创 2018-03-08 16:57:48 · 231 阅读 · 0 评论 -
poj3262 Protecting the Flowers(贪心)
题目链接:http://poj.org/problem?id=3262题目大意:fj有n头牛,每头牛不回牛棚则会每分钟吃D朵花,回牛棚则需要T分钟,每次fj只能运送一头牛回棚,求花的最小损失。本题是贪心,贪心最主要的就是要找到贪心策略。先说说本题的策略就是:按D/T的结果降序排列,即为运送顺序。首先考虑下如果所有的牛回棚都只需要1分钟 那么我们该以一个什么样的顺序送呢?肯定...原创 2018-03-05 21:28:15 · 279 阅读 · 0 评论 -
hihoCoder [Offer收割]编程练习赛50 C 末尾有最多0的乘积(动态规划)
题目链接:http://hihocoder.com/contest/offers50/problem/3题目大意:输入n个数,从中取出m个,要求这些数的乘积末尾0的个数最多。输出最多的0的个数。数据范围:1 ≤ M ≤ N ≤ 100 1 ≤ Ai ≤ 1000000000动态规划策略:设dp[i][j]存放的是当取出i个数,这些数的乘积包含因子5的个数为j时,包含因子2的个数。dp[i][j]...原创 2018-03-13 09:58:36 · 936 阅读 · 0 评论 -
2017第八届蓝桥杯省赛c/c++ B组
第一题 购物清单小明刚刚找到工作,老板人很好,只是老板夫人很爱购物。老板忙的时候经常让小明帮忙到商场代为购物。小明很厌烦,但又不好推辞。这不,XX大促销又来了!老板夫人开出了长长的购物单,都是有打折优惠的。小明也有个怪癖,不到万不得已,从不刷卡,直接现金搞定。现在小明很心烦,请你帮他计算一下,需要从取款机上取多少现金,才能搞定这次购物。取款机只能提供100元面额的纸币。小明想尽可能少取...原创 2018-03-13 10:54:48 · 745 阅读 · 0 评论 -
poj3046 Ant Counting(动态规划)
poj3064 Ant Counting(动态规划)题目链接:http://poj.org/problem?id=3046题目大意:有T(1<=T<=1000)种蚂蚁,共有A只,每种最多有Ni(1<=Ni<=100)。不同种类的蚂蚁可以相互区分但相同种类无法区分。从这些蚂蚁中挑取S种,S+1种…B种,共有多少种取法,求出方案数膜1000000的余数。动态规划策略...原创 2018-03-22 19:02:27 · 248 阅读 · 0 评论 -
poj3181 Dollar Dayz(动态规划)
题目链接:http://poj.org/problem?id=3181题目大意:fj有N$,要买工具,工具的价格为1$~K$,问fj有哪些种购买方式。 例如: 5$ 工具价格最高为3$(即有1$, 2$, 3$三种)。 fj可以买5个1$, 1个2$及3个1$, 2个2$及1个1$, 1个3$及2个1$, 1个3$及1个2$ 所以对应输出为5。动态规划策略:设dp[i][j]为i划...原创 2018-03-23 14:24:44 · 214 阅读 · 0 评论 -
禁止字符串
题目大意:考虑只由’A’, ‘G’, ‘C’, ‘T’四种字符组成的DNA字符串。给定一个长度为k的字符串s,请计算长度恰好为n且不包含s的字符串的个数,输出个数mod 10009后的结果。题目来源是[挑战程序设计竞赛(第二版)]中华丽地处理字符串的第一题,单字符串情况。题目类型为字符串上的动态规划算法。首先考虑最直观的算法就是:生成所有满足条件的字符串,但是字符串个数可能高达4^n,显然...原创 2018-03-23 16:10:07 · 880 阅读 · 0 评论 -
hihocoder1077 RMQ问题再临-线段树
题目链接:http://hihocoder.com/problemset/problem/1077线段树单点更新,区间最小值。#include <iostream>#include <cstdio>using namespace std;#define INF 0x7fffffffconst int max_n = 1e6+5;int n;// 存储线段树的...原创 2018-03-13 21:59:13 · 195 阅读 · 0 评论 -
hihocoder1015 KMP算法
KMP算法,网上有很多文章讲解,也有很多视频,内容怎么样,能不能讲明白这里就不置评了。我当然也不会讲,讲不出来,也是一知半解。所以这里只贴一下代码,方便日后查看。题目链接:http://hihocoder.com/problemset/problem/1015#include <iostream>#include <string>#include <cstring...原创 2018-03-29 20:38:16 · 271 阅读 · 0 评论 -
hihocoder1078 线段树的区间修改(线段树)
题目链接:http://hihocoder.com/problemset/problem/1078线段树区间求和(在线更新),区间更新。#include <iostream>#include <cstdio>using namespace std;const int MAX_N = 1e5 + 5;int seg_n;int seg[MAX_N &l...原创 2018-03-14 13:06:22 · 482 阅读 · 0 评论