博客专栏  >  编程语言   >  算法之路

算法之路

算法改变世界,我爱ACM。

关注
10 已关注
241篇博文
  • Hihocoder 1691 数字游戏 (思维)

    广搜或深搜会超时,我用优化过的广搜超时了。 思路   设原数组的为X" role="presentation">XXX,全排列中的某个数组为Y" role="presentation">YYY...

    2018-01-29 19:57
    216
  • Hihocoder1690 AEIOU (动态规划)

    分析 题目要求: 1. 所有的a都在e和i之前,所有的e都在i之前; 2. 所有的o都在u之前。 仔细分析发现如下特点: * 其实a、e、i" role="pr...

    2018-01-31 15:46
    158
  • 第八届蓝桥杯决赛 对局匹配

    标题:对局匹配 小明喜欢在一个围棋网站上找别人在线对弈。这个网站上所有注册用户都有一个积分,代表他的围棋水平。 小明发现网站的自动对局系统在匹配对手时,只会将积分差恰好是K的两名用户匹配在一起。如...

    2018-01-15 21:23
    498
  • PAT 1010. Radix (25)

    此题高能,甲级里面难度算比较大的了!(其实也不难,关键没指明数据范围) 思路:   最后的答案不止是≤36\leq36,也可能特别大(超过int, 达到 long long int)。不能...

    2018-01-19 14:26
    59
  • cf B. Mishka and trip (数学)

    题意  Mishka想要去一个国家旅行,这个国家共有nn个城市,1∼n1\sim n城市通过道路形成一个环,即第i个城市和第i+1i+1个城市之间有一条道路,此外城市11和nn之间有一条道路。这nn个...

    2017-10-17 22:26
    238
  • hihoCoder1330 数组重排

    题意小Hi想知道,如果他每次都按照一种固定的顺序重排数组,那么最少经过几次重排之后数组会恢复初始的顺序?具体来讲,给定一个1 - N 的排列 P,小Hi每次重排都是把第 i 个元素放到第 Pi个位置上...

    2017-09-17 11:10
    151
  • 2017CCPC 网络选拔赛1003 Ramsey定理

    Ramsey定理    任意6个人中,一定有三个人互为朋友,或者互相不是朋友。证明这里我就不证明了。下面链接有证明 鸽巢原理 Ramsey定理AC代码#include #include usi...

    2017-08-20 10:02
    437
  • UVALive - 3938 (线段树,区间查询)

    思路:详细分析见训练指南P200P200。注意可能答案的起点在左区间,终点在右区间AC代码#include #include using namespace std; typedef long l...

    2017-08-18 13:22
    260
  • PAT Public Bike Management (dfs)

    思路:你的答案必须满足三个条件: 1.在所有路径中选择最短的; 2.如果路径相等,则选择从PBMC中送出最少的; 3.如果路径相等且PBMC送出的车也相等,则选择带回最少的。 注意:这题很恶心...

    2017-08-14 08:54
    121
  • PAT All Roads Lead to Rome 单源最短路

    思路:单源最短路末班就好了,字符串映射成数字处理。AC代码//#define LOCAL #include #include #include #include #include #incl...

    2017-08-14 11:11
    392
  • 有趣的排序 (贪心+思维)

    题意:度度熊有一个N个数的数组,他想将数组从小到大 排好序,但是萌萌的度度熊只会下面这个操作: 任取数组中的一个数然后将它放置在数组的最后一个位置。 问最少操作多少次可以使得数组从小到大有序? ...

    2017-08-13 15:29
    342
  • 不等式数列 (动态规划)

    题意:度度熊最近对全排列特别感兴趣,对于1到n的一个排列,度度熊发现可以在中间根据大小关系插入合适的大于和小于符号(即 ‘>’ 和 ‘<’ )使其成为一个合法的不等式数列。但是现在度度熊手中只有k个小...

    2017-08-13 15:45
    264
  • 买帽子 (hash)

    思路:cnt[i]cnt[i]表示数字i出现的次数,在输入的同时记录每个数字出现的次数。最后从0枚举到1000判断第三个是否存在,存在则记录该数字。#include #include const ...

    2017-08-13 12:15
    265
  • 度度熊回家 (模拟)

    思路:先计算出从第0个坐标到第n-1个坐标的距离,然后枚举忽略[1,n−2][1, n-2]的点,直接可以得到需要走的距离。复杂度O(n)O(n),当然暴力枚举再重新计算也是可以AC的,复杂度O(n2...

    2017-08-13 12:35
    252
  • 寻找三角形 (海伦公式)

    海伦公式:S=p∗(p−a)∗(p−b)∗(p−c)−−−−−−−−−−−−−−−−−−−−−−√S=\sqrt{p*(p-a)*(p-b)*(p-c)},其中a,b,ca,b,c是三角形边长,pp是...

    2017-08-13 13:03
    529
  • 地牢逃脱 (BFS)

    题意:给定一个 n 行 m 列的地牢,其中 ‘.’ 表示可以通行的位置,’X’ 表示不可通行的障碍,牛牛从 (x0 , y0 ) 位置出发,遍历这个地牢,和一般的游戏所不同的是,他每一步只能按照一些指...

    2017-08-13 11:38
    368
  • 合唱团 (线性dp)

    题意:有 n 个学生站成一排,每个学生有一个能力值,牛牛想从这 n 个学生中按照顺序选取 k 名学生,要求相邻两个学生的位置编号的差不超过 d,使得这 k 个学生的能力值的乘积最大,你能返回最大的乘积...

    2017-08-13 10:21
    255
  • UVA - 11636 Hello World! (贪心)

    思路:复制次数最少并且可以部分复制,那么贪心地让当前尽量多的复制,如果最后一次复制会超过n,那就部分复制。即满足(1<<x)≥n(1<<x) \geq n并且x尽量小。AC代码#include co...

    2017-08-12 17:39
    467
  • PAT1118. Birds in Forest (并查集)

    思路:并查集一套带走。AC代码#include #include #include using namespace std; const int maxn = 10000+5;int par[m...

    2017-08-06 10:09
    271
  • PAT1119. Pre- and Post-order Traversals

    思路:中序遍历–根结点,左子树,右子树;后序遍历–左子树,右子树,根结点。 那么在找到根结点之后就可以开始划分左右子树了。左子树的先序第一个节点是根,左子树的后序最后一个节点是根。 例如 1 2...

    2017-08-05 12:46
    491

Java之旅
82005
img博客搬家
img撰写博客
img发布 Chat
img专家申请
img意见反馈
img返回顶部