![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Algorithm
Nicolas Lee
Yesterday you said tomorrow
展开
-
POJ 2239 Selecting Courses (二分图)
Selecting CoursesTime Limit: 1000MS Memory Limit: 65536K Total Submissions: 11797 Accepted: 5246 DescriptionIt is well known that it is not easy to select courses in the colleg...原创 2018-12-29 22:53:39 · 157 阅读 · 0 评论 -
算法提高 幸运顾客
题目链接为了吸引更多的顾客,某商场决定推行有奖抽彩活动。“本商场每日将产生一名幸运顾客,凡购买30元以上商品者均有机会获得本商场提供的一份精美礼品。”该商场的幸运顾客产生方式十分奇特:每位顾客可至抽奖台抽取一个幸运号码,该商场在抽奖活动推出的第i天将从所有顾客中(包括不在本日购物满30元者)挑出幸运号第i小的顾客作为当日的幸运顾客。该商场的商品本就价廉物美,自从有奖活动推出后,顾客更是络绎不绝...原创 2019-02-08 11:58:32 · 613 阅读 · 0 评论 -
算法提高 分苹果 差分数组
题目链接问题描述 小朋友排成一排,老师给他们分苹果。 小朋友从左到右标号1..N。有M个老师,每次第i个老师会给第Li个到第Ri个,一共Ri-Li+1个小朋友每人发Ci个苹果。 最后老师想知道每个小朋友有多少苹果。如果每次修改都修改从L到R的值的话,一定会TLE。 使用差分数组。差分数组(差分数列):对于一个数组A[ ],其差分数组D[i]=A[i]-A[i-1...原创 2019-02-11 10:09:07 · 537 阅读 · 1 评论 -
算法提高 选择排序
题目链接 选择排序问题描述 排序,顾名思义,是将若干个元素按其大小关系排出一个顺序。形式化描述如下:有n个元素a[1],a[2],…,a[n],从小到大排序就是将它们排成一个新顺序a[i[1]]<a[i[2]]<…<a[i[n]] i[k]为这个新顺序。 选择排序的思想极其简单,每一步都把一个最小元素放到前面,如果有多个相等的最小元素,选择排位较考前的放...原创 2019-02-22 20:11:24 · 242 阅读 · 0 评论 -
历届试题 连号区间数
问题描述小明这些天一直在思考这样一个奇怪而有趣的问题:在1~N的某个全排列中有多少个连号区间呢?这里所说的连号区间的定义是:如果区间[L, R] 里的所有元素(即此排列的第L个到第R个元素)递增排序后能得到一个长度为R-L+1的“连续”数列,则称这个区间连号区间。当N很小的时候,小明可以很快地算出答案,但是当N变大的时候,问题就不是那么简单了,现在小明需要你的帮助。锦囊:从左...原创 2019-03-19 21:07:32 · 224 阅读 · 0 评论 -
算法训练 表达式计算
题目链接问题描述 输入一个只包含加减乖除和括号的合法表达式,求表达式的值。其中除表示整除。分析:简单的四则运算用两个stack,opt记录符号栈,num记录数字。每次加入符号,如果栈不为空&&栈顶元素优先级>=加入的符号优先级时,进行运算。如果带有括号,则可以递归进行四则运算(当成一个新的没有括号的四则运算)。优化,在最后结尾加入一个‘)’,这样每次最后...原创 2019-03-11 15:39:56 · 629 阅读 · 0 评论 -
历届试题 k倍区间 前缀和
题目链接问题描述 给定一个长度为N的数列,A1, A2, ... AN,如果其中一段连续的子序列Ai, Ai+1, ... Aj(i <= j)之和是K的倍数,我们就称这个区间[i, j]是K倍区间。 你能求出数列中总共有多少个K倍区间吗?做法:首先统计前缀和sum[i] 表示A1+A2+…+Ai.所以对于任意一段区间[l,r]的和就是sum[r]-sum[l-1].如...原创 2019-03-18 21:25:34 · 337 阅读 · 0 评论 -
Age Sort UVA - 11462 年龄排序 计数排序
You are given the ages (in years) of all people of a country with at least 1 year of age. You know that no individual in that country lives for 100 or more years. Now, you are given a very simple tas...原创 2019-05-03 20:52:55 · 263 阅读 · 0 评论 -
Calculator Conundrum UVA - 11549 计算器谜题 Floyd判圈算法
Alice got a hold of an old calculator that can display n digits. She was bored enough to come up with the following time waster. She enters a number k then repeatedly squares it until the ...原创 2019-05-04 19:11:00 · 325 阅读 · 0 评论 -
算法训练 矩阵乘方 矩阵的快速幂
题目链接 蓝桥杯 算法训练---------题解问题描述 给定一个矩阵A,一个非负整数b和一个正整数m,求A的b次方除m的余数。 其中一个nxn的矩阵除m的余数得到的仍是一个nxn的矩阵,这个矩阵的每一个元素是原矩阵对应位置上的数除m的余数。 要计算这个问题,可以将A连乘b次,每次都对m求余,但这种方法...原创 2019-05-05 11:14:16 · 640 阅读 · 0 评论 -
算法训练 According to Bartjens 字符串四则运算
题目链接 问题描述 Bartjens教授十分在意算术——因为他比较传统。他决定给学生布置一些计算作业,并且不能使用电子设备。不幸的是,Bartjens教授的打印机实在是太旧了,不能和新的打印机兼容。打印出了题目后,教授发现所有的符号都丢失了!例如2100-100=,被打印成了2100100=。不过,数字和等号被正确的打印了。更糟糕的是,教授的试题原稿不见了。因此,他需要恢复出这些题原...原创 2019-02-06 19:47:47 · 563 阅读 · 0 评论 -
算法提高 插入排序
题目链接问题描述 排序,顾名思义,是将若干个元素按其大小关系排出一个顺序。形式化描述如下:有n个元素a[1],a[2],…,a[n],从小到大排序就是将它们排成一个新顺序a[i[1]]<a[i[2]]<…<a[i[n]] i[k]为这个新顺序。 插入排序,顾名思义,是通过插入操作完成排序。其直觉和方法来源于打牌时安排牌的方法。每次摸起一张牌,你都会将其插入到现在...原创 2019-02-03 21:26:46 · 369 阅读 · 0 评论 -
ALGO-151 算法训练 6-2递归求二进制表示位数
蓝桥杯 算法训练---------题解算法训练 6-2递归求二进制表示位数 时间限制:10.0s 内存限制:256.0MB 问题描述 给定一个十进制整数,返回其对应的二进制数的位数。例如,输入十进制数9,其对应的二进制数是1001,因此位数是4。样例输入一个满足题目要求的输入范例。9样例输出与上面的样例输入对应的输出。数据规模和约定 输入...原创 2018-12-30 14:49:56 · 448 阅读 · 0 评论 -
蓝桥杯 ALGO-141 算法训练 P1102
算法训练 P1102 时间限制:1.0s 内存限制:256.0MB 定义一个学生结构体类型student,包括4个字段,姓名、性别、年龄和成绩。然后在主函数中定义一个结构体数组(长度不超过1000),并输入每个元素的值,程序使用冒泡排序法将学生按照成绩从小到大的顺序排序,然后输出排序的结果。 输入格式:第一行是一个整数N(N<1000),表示元素个数;接下来N...原创 2018-12-30 17:34:22 · 409 阅读 · 0 评论 -
ALGO-6 算法训练 安慰奶牛 两种最小生成树解法
锦囊1使用最小生成树算法。问题描述Farmer John变得非常懒,他不想再继续维护供奶牛之间供通行的道路。道路被用来连接N个牧场,牧场被连续地编号为1到N。每一个牧场都是一个奶牛的家。FJ计划除去P条道路中尽可能多的道路,但是还要保持牧场之间 的连通性。你首先要决定那些道路是需要保留的N-1条道路。第j条双向道路连接了牧场Sj和Ej(1 <= Sj<= N; 1 &...原创 2018-12-31 10:59:17 · 640 阅读 · 1 评论 -
POJ 2492 A Bug's Life (带权并查集)
A Bug's LifeTime Limit: 10000MS Memory Limit: 65536K Total Submissions: 45943 Accepted: 14825 DescriptionBackground Professor Hopper is researching the sexual behavior of a ra...原创 2018-12-28 09:03:42 · 233 阅读 · 0 评论 -
ALGO-10 算法训练 集合运算
算法训练 集合运算 时间限制:1.0s 内存限制:512.0MB 锦囊1排序后处理。问题描述 给出两个整数集合A、B,求出他们的交集、并集以及B在A中的余集。输入格式 第一行为一个整数n,表示集合A中的元素个数。 第二行有n个互不相同的用空格隔开的整数,表示集合A中的元素。 第三行为一个整数m,表示集合B中的元素个数。 第四行有m...原创 2019-01-04 23:44:17 · 845 阅读 · 0 评论 -
算法提高 冒泡法排序
算法提高 冒泡法排序 时间限制:1.0s 内存限制:512.0MB 输入10个数,用“冒泡法”对10个数排序(由小到大)这10个数字在100以内。样例输入1 3 6 8 2 7 9 0 4 5样例输出0 1 2 3 4 5 6 7 8 9#include <iostream>using namespace std; void b...原创 2019-01-05 22:49:12 · 263 阅读 · 0 评论 -
火柴棒等式
标签: 火柴棒等式 详情: 给你n根火柴棍,你可以拼出多少个形如“A+B=C”的等式?等式中的A、B、C是用火柴棍拼出的整数(若该数非零,则最高位不能是0)。用火柴棍拼数字0-9的拼法如图所示: 注意: 1. 加号与等号各自需要两根火柴棍 2. 如果A≠B,则A+B=C与B+A=C视为不同的等式(A、B、C>=0) 3...原创 2018-12-21 10:34:56 · 442 阅读 · 0 评论 -
System Dependencies UVA - 506 模拟
软件组件之间可能会有依赖关系,例如,TELNET和FTP都依赖于TCP/IP。你的任务是模拟安装和卸载软件组件的过程。首先是一些DEPEND指令,说明软件之间的依赖关系(保证不存在循环依赖),然后是一些INSTALL、REMOVE和LIST指令,如表6-1所示。表6-1 指令说明指令说明 DEPEND item1 item2 [item3 …] item1依赖组件item2, it...原创 2019-01-08 09:16:23 · 244 阅读 · 0 评论 -
为何程序员喜欢将INF设置为0x3f3f3f3f?
在算法竞赛中,我们常常需要用到一个“无穷大”的值,对于我来说,大多数时间我会根据具体问题取一个99999999之类的数(显得很不专业啊!)在网上看别人代码的时候,经常会看到他们把INF设为0x7fffffff,奇怪为什么设一个这么奇怪的十六进制数,一查才知道,因为这是32-bit int的最大值。如果这个无穷大只用于一般的比较(比如求最小值时min变量的初值),那么0x7fffffff确实是一...转载 2019-02-03 20:22:25 · 246 阅读 · 0 评论 -
Jurassic Remains UVALive - 2965 侏罗纪 状压+中途相遇法
题目链接 Paleontologists in Siberia have recently found a number of fragments of Jurassic period dinosaur skele- ton. The paleontologists have decided to forward them to the paleontology museum. U...原创 2019-05-06 15:48:57 · 198 阅读 · 0 评论