Loading

随笔分类 -  算法----------

摘要:一、内容 题意:给定2个字符串s1,s2,将2个字符串进行重组成S,规则是S2最下面拿一个,S1最下面拿1个,直到所有块都用完。 二、思路 用map记录下S串结果,若以前访问过这个串代表不可能有结果直接返回-1。 然后就是模拟重组串的过程。 三、代码 #include<iostream> #incl 阅读全文
posted @ 2020-06-10 16:15 RioTian 阅读(134) 评论(0) 推荐(0)
摘要:题目大意: 见《挑战程序设计竞赛》P74。 我的理解: 优先队列+贪心 注意把输入的距离(加油站到终点)改为起点到加油站。 因为求得是最优解,需要尽可能少的加油站,所以我们每次希望去加油的时候 加最大的那个,因而将加油站push进priority_queue(堆结构,默认每次弹出最大值) 在到达加油 阅读全文
posted @ 2020-06-09 16:31 RioTian 阅读(124) 评论(0) 推荐(0)
摘要:原文来源:https://blog.csdn.net/dark_cy/article/details/88926435 深搜原理 深搜,顾名思义,是深入其中、直取结果的一种搜索方法。 如果深搜是一个人,那么他的性格一定倔得像头牛!他从一点出发去旅游,只朝着一个方向走,除非路断了,他绝不改变方向!除非 阅读全文
posted @ 2020-06-08 11:00 RioTian 阅读(489) 评论(0) 推荐(0)
摘要:在有向无环图(DAG,即 Directed Acyclic Graph)中,拓扑排序(Topological Sorting)是其顶点的线性排序,使得对于从顶点 \(u\) 到顶点 \(v\) 的每个有向边,在排序中 \(u\) 都在 \(v\) 之前。 有向无环图(DAG)才有拓扑排序,非 DAG 阅读全文
posted @ 2020-06-06 21:38 RioTian 阅读(348) 评论(0) 推荐(0)
摘要:古语有云,“笑人情似纸,世事如棋”。生活中每个人如同棋手,其每一个行为如同在一张看不见的棋盘 上布子,精明慎重的棋手们相互揣摩、牵制、争赢,下出诸多精彩纷呈、变化多端的棋局。而什么是博 弈论?就是研究棋手们 的“出棋” 过程,从中抽象出可逻辑化的部分,并将其系统化的一门科学,也是运 筹学的一个重要学 阅读全文
posted @ 2020-06-02 18:18 RioTian 阅读(1168) 评论(0) 推荐(1)
摘要:题目链接:http://poj.org/problem?id=2484 题意:Alice和Bob玩游戏,从一堆圆环形排列的硬币中拿硬币,每次可以拿一个或者两个,但必须拿连续的(两个中间有空位也视为不连续),Alice先手,给定硬币个数,问谁赢。 题解: 当n=1或者n=2时,Alice可以一下子取走 阅读全文
posted @ 2020-05-30 21:16 RioTian 阅读(171) 评论(0) 推荐(0)
摘要:Candies POJ - 3159 题意: 给N个小朋友分糖, 给出M组约束a, b, c表示b的糖果不能比a多c个以上, 求1号和N号的最大糖果差异数 题解: 非常显然的线性查分约束问题 对于a, b, c表示b的糖果不能比a多c个以上 , 即cnt[a]+c >= cnt[b], 可以理解为a 阅读全文
posted @ 2020-05-22 19:43 RioTian 阅读(421) 评论(0) 推荐(0)
摘要:题目背景 一年一度的“跳石头”比赛又要开始了! 题目描述 这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石。组委会已经选择好了两块岩石作为比赛起点和终点。在起点和终点之间,有 N N 块岩石(不含起点和终点的岩石)。在比赛过程中,选手们将从起点出发,每一步跳向相邻的岩石,直至到达终点。 为 阅读全文
posted @ 2020-05-21 16:47 RioTian 阅读(384) 评论(0) 推荐(0)
摘要:POJ :1511 http://poj.org/problem?id=1511 ##思路 求1号点到其他点的最短路 + 其他点到1号点的最短。 结果用long long。 用快读可以加快时间 代码 spfa 890ms #ifdef ONLINE_JUDGE #pragma warning (di 阅读全文
posted @ 2020-05-20 21:19 RioTian 阅读(322) 评论(0) 推荐(0)
摘要:简介 Floyd算法算是最简单的算法,没有之一。 其状态转移方程如下map[i , j] =min{ map[i , k] + map[k , j] , map[i , j] }; map[i , j]表示 i 到 j 的最短距离,K是穷举 i , j 的断点,map[n , n]初值应该为0,或者 阅读全文
posted @ 2020-05-19 17:39 RioTian 阅读(895) 评论(0) 推荐(0)
摘要:POJ 2240 http://poj.org/problem?id=2240 题意:判断是否存在使得汇率增多的环 【任意一个点的汇率增多都可以】 Floyd 简单变形 \(w[i][j] = max(w[i][j], w[i][k]*w[k][j])\) #ifndef ONLINE_JUDGE 阅读全文
posted @ 2020-05-19 17:30 RioTian 阅读(312) 评论(0) 推荐(0)
摘要:POJ 3660 http://poj.org/problem?id=3660 思路: 传递闭包 输入A > B,那么我们可以建立一套A —>B 的边。 然后求出传递闭包。 判断一个人是否知道排名,如果知道大于它的人数+小于它的人数 == n-1那么就可以知道排名了。 大于它的人数: g[u][v] 阅读全文
posted @ 2020-05-19 15:37 RioTian 阅读(110) 评论(1) 推荐(0)
摘要:背景 我们第一次接触字符串匹配,想到的肯定是直接用2个循环来遍历,这样代码虽然简单,但时间复杂度却是$Ω(m n)$,也就是达到了字符串匹配效率的下限。于是后来人经过研究,构造出了著名的KMP算法(Knuth Morris Pratt算法),让我们的时间复杂度降低到了$O(m+n)$,但现代文字处理 阅读全文
posted @ 2020-05-17 08:37 RioTian 阅读(2381) 评论(0) 推荐(0)
摘要:算法介绍 A*(念做:A Star)算法是一种很常用的路径查找和图形遍历算法。它有较好的性能和准确度。本文在讲解算法的同时也会提供Python语言的代码实现,并会借助matplotlib库动态的展示算法的运算过程。 A*算法最初发表于1968年,由Stanford研究院的Peter Hart, Ni 阅读全文
posted @ 2020-05-16 21:11 RioTian 阅读(3074) 评论(1) 推荐(0)
摘要:在解 "AOJ 0531 Paint Color" 时,学到了一个累积和的妙用——imos法,由于原文是日语,所以特意翻译过来。值得一提的是,作者Kentaro Imajo跟鄙人同龄,却已取得如此多的成就,而鄙人一无所成,实在汗颜。 imos法 imos法是将累积和算法拓展到多次元、高次空间的方法。 阅读全文
posted @ 2020-05-14 20:23 RioTian 阅读(724) 评论(2) 推荐(1)
摘要:POJ - 1860 一种货币就是一个点 一个“兑换点”就是图上两种货币之间的一个兑换方式,是双边,但A到B的汇率和手续费可能与B到A的汇率和手续费不同。 唯一值得注意的是权值,当拥有货币A的数量为V时,A到A的权值为K,即没有兑换 而A到B的权值为(V-Cab)*Rab 本题是“求最大路径”,之所 阅读全文
posted @ 2020-05-14 15:59 RioTian 阅读(169) 评论(0) 推荐(0)
摘要:"POJ 3268 Silver Cow Party" 奶牛派对:有分别来自 N 个农场的 N 头牛去农场 X 嗨皮,农场间由 M 条有向路径连接。每头牛来回都挑最短的路走,求它们走的路的最大长度? 们其实都是“图” 最短路 dijkstra 解决任意两点最短路的变种 用floyd的话会TLE,$1 阅读全文
posted @ 2020-05-14 11:37 RioTian 阅读(118) 评论(0) 推荐(0)
摘要:Til the Cows Come Home Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 43861 Accepted: 14902 Description Bessie is out in the field and wan 阅读全文
posted @ 2020-05-12 22:37 RioTian 阅读(488) 评论(0) 推荐(0)
摘要:| Time Limit: 1000MS | | Memory Limit: 10000K | | | | | | Total Submissions: 1556 | | Accepted: 457 | Description After having drifted about in a smal 阅读全文
posted @ 2020-05-12 21:13 RioTian 阅读(130) 评论(0) 推荐(0)