随笔分类 -  [思维题]

摘要:HDU 2044 "一只小蜜蜂" •题解 类似与斐波那契数列; 定义 $f[i]$ 表示从 $1$ 号蜂房走到 $i$ 号蜂房的总方案数,那么有 $f[1]=f[2]=1$,$f[i]=f[i-1]+f[i-2]\ ,\ i > 2$; 但此题要求你从 $a$ 号蜂房走到 $b$ 号蜂房的总方案数; 阅读全文
posted @ 2019-11-03 16:41 HHHyacinth 阅读(282) 评论(0) 推荐(0)
摘要:传送门 •参考资料 [1]:51Nod-1380-夹克老爷的逢三抽一 •题意 从长度为 n 的数组中抽取 $\frac{n}{3}$ 个不相邻的值使得加和最大(首尾也不能同时取) •题解 贪心选择当前最大值 $a_{max}$,同时删掉包含 $a_{max}$ 在内的其左($a_l$)和其右($a_ 阅读全文
posted @ 2019-10-23 10:07 HHHyacinth 阅读(204) 评论(0) 推荐(0)
摘要:传送门 •参考资料 [1]:HDU6438(优先队列+思维) •题意 有n个城市,第 i 天你会达到第 i 个城市; 在第 i 个城市中,你可以用 ai 元购买一个物品,或者用 ai 元卖掉一个物品,你可以同时保存多个物品。 最开始你身上没有物品,但是有无限的金钱; 让你求从城市 1 走到城市 n, 阅读全文
posted @ 2019-10-22 16:15 HHHyacinth 阅读(180) 评论(0) 推荐(0)
摘要:传送门 •题意 给你 k 个序列,第 i 个序列含有 ni 个元素; 问是否存在两个不同的序列 i,j; 满足序列 i 删除某个数后的总和等于序列 j 删除某个数后的总和; •题解 定义 map<int , pair<int ,int > >f; 为了方便表述,将上述定义改为 map<x ,pair 阅读全文
posted @ 2019-07-22 21:08 HHHyacinth 阅读(142) 评论(0) 推荐(0)
摘要:传送门: [1]:BZOJ [2]:洛谷 •题解 定义数组 a,b,c 分别表示 'J' , 'O' , 'I' 的前缀和; 要想使区间 (L,R] 满足条件当且仅当 a[R]-a[L] = b[R]-b[L] = c[R]-c[L]; 那么,由 a[R]-a[L] = b[R]-b[L] ⇔ a[ 阅读全文
posted @ 2019-07-22 19:41 HHHyacinth 阅读(232) 评论(0) 推荐(0)
摘要:传送门 •参考资料 [1]:浅梦无痕 [2]:Esquecer [3]:My CSDN •题意 n 个人围成一圈,1,2 报数,报 1 的离队,求编号为 x 的第几次出队; •对博文[1]的理解 第一轮出队的编号一定为奇数,如果 x 为奇数,那么 x 一定在第一轮就出队了,ans = (x+1) / 阅读全文
posted @ 2019-06-30 22:01 HHHyacinth 阅读(325) 评论(0) 推荐(0)
摘要:•参考资料 [1]:紫书P82 •题意(by紫书) 按照被选中的次序输出这 n 个人的编号; 如果A和B选中的是同一个人,输出一个这个人的编号; 输出格式:输出的每个编号占3个字节,不够3个字节在前面用空格补; •循环报数处理技巧 n个人按照逆时针顺序编号1~n; 给你一个整数 k 和 cur; c 阅读全文
posted @ 2019-06-25 11:36 HHHyacinth 阅读(359) 评论(0) 推荐(0)
摘要:传送门 D. Divide by three, multiply by two •题意 给你一个数 x,x 可以执行以下两种操作中的一种得到数 y: y 再执行上述两种操作的一种得到数 z; 接着对 z 得到...... 这样依次执行了 n-1 次会得到 n 个数; 现在给你这 n 个数,让你按照上 阅读全文
posted @ 2019-06-11 21:39 HHHyacinth 阅读(309) 评论(0) 推荐(0)
摘要:传送门 E.sequence •题意 定义序列 p 中的 "good",只要 i 之前存在 pj < pi,那么,pi就是 "good"; 求删除一个数,使得序列中 "good" 的个数最多; •题解 一个数 pi 对 "good" 的贡献有两个来源: ①pi 本身为"good",对答案的贡献为 1 阅读全文
posted @ 2019-06-10 11:02 HHHyacinth 阅读(335) 评论(0) 推荐(0)
摘要:传送门 F.Black&White •题意 操作 m 次后,求连续的1或连续的0的最大值,每次操作只能反转一个位置; •思路1(反悔操作) 定义队列q:依次存放两个零之间的1的个数+1; 首先求解1最大的连续值; 假设 n=15 , m=3 , s如下图所示; ①来到第一个0位置,m=3>0,反转, 阅读全文
posted @ 2019-06-10 08:39 HHHyacinth 阅读(217) 评论(0) 推荐(0)
摘要:传送门 A. Divide it! •题意 定义整数 n 上的三个操作: 如果可以经过上述操作使得 n 变为 1,输出最小操作次数,反之,输出-1; •题解 易得 2 > 3/2 > 5/4; 操作执行的优先级 1 > 2 > 3; 按照优先级依次执行; •AC代码 1 #include<bits/ 阅读全文
posted @ 2019-06-10 07:31 HHHyacinth 阅读(354) 评论(0) 推荐(1)
摘要:传送门 参考资料 [1]: the Chinese Editoria A. Nauuo and Votes •题意 x个人投赞同票,y人投反对票,z人不确定; 这 z 个人由你来决定是投赞同票还是反对票; 判断 x 与 y 的相对大小是否确定? •题解 如果 x == y && z == 0,输出 阅读全文
posted @ 2019-06-08 09:18 HHHyacinth 阅读(327) 评论(0) 推荐(1)
摘要:传送门 题目描述 你是活跃在历史幕后的一名特工,为了世界和平而夜以继日地努力着。 这个世界有N个国家,编号为1..N; 你的目的是在这N个国家之间建立尽可能多的友好关系。 你为了制定一个特工工作的计划,作出了一张当今国际关系的示意图。 你准备了一张非常大的画纸,先画下了代表每个国家的N个点。 接下来 阅读全文
posted @ 2019-05-29 21:43 HHHyacinth 阅读(360) 评论(0) 推荐(0)
摘要:2019 计蒜之道 初赛 第一场 A. 商汤的AI伴游小精灵 题解: 疑似贪心; 需要删除的骨牌满足的条件为: [1]:出度最大; [2]:出度相同判断有无入度; AC代码: 1 #include<bits/stdc++.h> 2 using namespace std; 3 #define mem 阅读全文
posted @ 2019-05-25 22:20 HHHyacinth 阅读(463) 评论(0) 推荐(0)
摘要:传送门 题意: 给出你序列 a,在序列 a 上执行两种操作; ① 0 :查询有多少连续的片段[L,...,R],满足 a[L,...,R] > l; ② 1 p d :将第 p 个数增加 d; 思路: 在 m 次操作中,只有出现 a[p] ≤ l && a[p]+d > l 时,才有可能合并区间; 阅读全文
posted @ 2019-05-24 10:04 HHHyacinth 阅读(213) 评论(0) 推荐(0)
摘要:传送门 参考资料: [1]:https://www.cnblogs.com/wangrunhu/p/10880130.html [2]:https://blog.csdn.net/weixin_43262291/article/details/90271693 题意(摘抄自[1]): 给定一个RBS 阅读全文
posted @ 2019-05-23 12:03 HHHyacinth 阅读(173) 评论(0) 推荐(0)
摘要:传送门 题意: 给你一个只包含 '(' 和 ')' 的长度为 n 字符序列s; 给出一个操作:将第 i 个位置的字符反转('(' ')' 互换); 问有多少位置反转后,可以使得字符串 s 变为"Regular Bracket Sequence"; 输出满足条件的位置的个数; 题解: 令 '(' = 阅读全文
posted @ 2019-05-23 11:12 HHHyacinth 阅读(146) 评论(0) 推荐(0)
摘要:传送门 参考资料: [1]:https://blog.csdn.net/weixin_43262291/article/details/90271693 题意: 给你一个包含 n 个数的序列 a,并且 max{ai} ≤ x; 定义一个操作 f(L,R) 将序列 a 中 L ≤ ai ≤ R 的数删 阅读全文
posted @ 2019-05-22 22:13 HHHyacinth 阅读(213) 评论(0) 推荐(0)
摘要:传送门 题意: 农场主 FJ 有 n 头奶牛,现在给你 m 对关系(x,y)表示奶牛x的产奶速率高于奶牛y; FJ 想按照奶牛的产奶速率由高到低排列这些奶牛,但是这 m 对关系可能不能精确确定这 n 头奶牛的关系; 问最少需要额外增加多少对关系使得可以确定这 n 头奶牛的顺序; 题解: 之所以做这道 阅读全文
posted @ 2019-05-21 10:00 HHHyacinth 阅读(186) 评论(0) 推荐(0)
摘要:C. A Tale of Two Lands 题意: 给出 n 个数,问有多少点对(x,y)满足 |x-y| ≤ |x|,|y| ≤ |x+y|; (x,y) 和 (y,x) 表示一种答案; 题解: 数形结合; 对于某数 x 查找满足条件 y 有多少个; ①x ≥ 0 y ∈ [x/2 , 2x]  阅读全文
posted @ 2019-05-20 18:32 HHHyacinth 阅读(378) 评论(0) 推荐(0)