
codeforces
Joovo
成事不说,遂事不谏,既往不咎。
展开
-
Door Frames CodeForces - 910B
大意: 给一个长条木板 L 建两个门框 门框由 2*a 和 b 构成,求最少需要多少个长条木板分析: 可以贪心地去做…wa了 数据小果断dfs暴搜一下#includeusing namespace std;#define pb push_back#define inf 0x3f3f3f3f#define mem(s,t) memset(s,t,sizeof s)ty原创 2018-01-30 21:04:05 · 449 阅读 · 0 评论 -
#440 Div.2 B. Maximum of Maximums of Minimums 水
原题链接: B. Maximum of Maximums of Minimums 大意: 分成 k 个不重合的连续子串,即一个“划分”,求最小值的最大值。分析: 被坑了,给自己长个记性,答案初始化成 0 了,最大最小值都记得初始化为inf,把答案忘了,务必把所有ans,minn,maxn初始化输入的值。具体实现:#include <bits/stdc++.h>using namespace原创 2017-10-15 20:10:42 · 325 阅读 · 0 评论 -
#443 Div.2 B. Table Tennis 排队游戏 && 细节
B. Table Tennis题意看错好几次。。。 n people are standing in a line to play table tennis. At first, the first two players in the line play a game. Then the loser goes to the end of the line, and the winner play原创 2017-10-30 12:53:53 · 598 阅读 · 0 评论 -
#439 Div.2 C. The Intriguing Obsession 组合数学
原题链接: C. The Intriguing Obsession大意: 有若干个小岛,由三种颜色组成,现在在小岛之间添加桥,桥的长度为1,要求相同颜色的小岛之间的路长度不小于三,求有多少的方法。思路: 可以看成一个三棱柱,每条棱代表一个颜色,易得棱上没有线段相连,那么考虑一个面上的线段连法。易得 不能有两个 A 棱上的点同时连到 B棱上的相同点。 线段数 i 从 0~min(a,b) ,对于原创 2017-10-12 18:40:03 · 319 阅读 · 0 评论 -
Weather Station DP
原题链接: Weather Station大意: 八个风向, 给一个字符串,求表示的意思有多少个,对1e9+7取模。Note:The line in the first example has two solutions:NEWS can means{N, E, W, S}and{NE, W, S}.dp即可。#include <bits/stdc++.h>using namespac原创 2017-09-12 14:27:58 · 370 阅读 · 0 评论 -
Fried Fish
原题链接 Fried Fish大意: 一个平底锅煎饼(鱼),有 N 条鱼和,一个锅煎 K 个鱼,求最少时间。思路: 鱼分为两面,面数除以 K 即可。 注意特判。#include <bits/stdc++.h>using namespace std;typedef long long ll;#define mem(s,t) memset(s,t,sizeof(s))#define D(v原创 2017-09-12 14:21:21 · 462 阅读 · 0 评论 -
CodeForces-626C Block Towers 二分例题 & 贪心
题目链接: CF-626C大意: 给两个数字 n,m。 求构造出 n 个 2 的倍数,m 个 3 的倍数,数字各不相同,求最大值的最小值。思路: 用二分的方法确定。首先确定题目能否用二分思想:1. 是否满足单调性.2. 是否有可行的判断条件。对于这道题,简单判断来看,对应出的 “构造出 n 个 2 的倍数,m 个 3 的倍数”这个解都有多个,而解集中有一个最小的,就是答案,而下一个解集对应的最原创 2017-08-12 01:53:36 · 644 阅读 · 0 评论 -
codeforces 813C The Tag Game dfs && 路径长度
原题链接: codeforces 813C大意: A B 在一棵树上,每人轮流移动,B 先走,直到 A 追上 B 为止。 A在 1,B在 x 处。 求最少操作数。每次操作为站立不动或是移动到相邻点。思路: 问题转换为 A的路径*2,只要满足 A 比 B 先到即可。 所以从 1 和 x 分别跑两次最长路径,储存叶子节点的路径,求 d1[i] >d2[i] 的最大d1[i] 即可。代码实现:原创 2017-08-21 17:33:10 · 406 阅读 · 0 评论 -
codeforces Div.2 #840D Leha and another game about graph 顶点权值为度数对应奇偶
原题链接: codeforces 840D 大意: 给一个无向连通图,不包含子环,允许回路存在。每个点的权值为 did_i, did_i 的值为 1 ,-1 ,0 的一种。现在要求构造一个子图,要求每个点的权值为 -1 或是 该点的度数模 2 为 d[i]d[i] 。 不存在则输出-1Limits: nn 3e5思路: 当时比赛的时候有点乱,没理清楚,题目并不难,但是不是很好打。学原创 2017-08-21 16:55:01 · 594 阅读 · 0 评论 -
codeforces Pride 892C
题目链接: 892C Pride 大意: 给出一排数字,对这一排数字做一些操作如下: 每次对相邻的数字取 gcd,将结果赋给其中一个值。 求最少需要多少次操作 使得所有数字全为 1思路: 先考虑有解的情况。 如果有 1,那么直接对应gcd下去就能出解。 那么如果没有1呢? 1 一定来自某两个上一级 gcd,上一级的 gcd 来自上上一级的 gcd 因此,只要暴力循环下去,求相邻原创 2017-11-18 19:41:09 · 634 阅读 · 0 评论 -
codeforces -891B Gluttony 排列,构造题
题目链接: Div.2 D 大意: 给出一串数字,a[n],现在要求构造出一个 b[n],bn是an的一个排列,且满足以下条件: 对于 a 和 b 的 任意相同位置对应的子集和,都不能相等。 即 a 对应是 1 4 8 2 b 对应可以为 2 8 1 4 第 1 2 3 个位置对应的子集和为 sum{1,4,8}≠sum{2,8,1}sum\{1,4,8\} \neq sum\{2,原创 2017-11-18 19:29:42 · 439 阅读 · 0 评论 -
#442 Div.2 AB &C. Slava and tanks 思维题
A. Alex and broken contest 大意: 求解一个字符串里是否有唯一特定的一些串,查询即可。 竟然被hack了。。substr函数写错了。string substr (size_t pos = 0, size_t len = npos) const;//第一个参数为起始位置,第二个参数为长度B. Nikita and string 大意: 一个只包含a和b的字符串,求原创 2017-10-30 12:34:44 · 368 阅读 · 0 评论 -
Planning CodeForces - 853A 贪心
题目链接: Planning题目大意: 机场中飞机起飞序列为 ai(i>=0)" role="presentation" style="position: relative;">ai(i>=0)ai(i>=0)a_i(i>=0) 分别表示为: 在 i 时间起飞的飞机被延误后的每分钟代价为 ai" role="presentation" style="position: relativ原创 2018-01-30 21:53:44 · 427 阅读 · 0 评论 -
Cooking Time Gym - 101498F 贪心
题目链接: Cooking Time 题目大意: 有一个冰箱,有N个调味品,一开始所有调味品都在冰箱内.外面最多放置 K个调味品 你要按给定的顺序来拿取调味品,如果外面有调味品那么直接取用即可,如果没有需要打开冰箱,如果外面放置数达到K了,那么需要放回一个. 现在要求最少要开几次冰箱分析: 贪心地去放回调味品,将后面没有再继续用的调味品放回. 如果都一样那么任意返回一个即可.原因原创 2018-01-29 16:14:59 · 667 阅读 · 0 评论 -
D.MADMAX 记忆化搜索 DAG
MADMAX 大意: 一个无向图,每条边有一个权值用字母表示,两个人在图上开始博弈游戏. 每次两个人轮流移动,.最后一个不能移动的人输,每次移动都要满足这条边比上一条边要大.输出一个表格表示两人从任意两点出发的输赢情况.即遍历得到所有情况 规模100 1000ms 分析: 每个状态记录两个人的点 dp ( u , v , c ) 表示位置在 u 和 v, 上一个权值为 c原创 2018-01-30 21:00:34 · 430 阅读 · 0 评论 -
codeforces Div.2 899C Dividing the numbers
大意: 划分1-n的集合,将其分为两个,要求两个集合的和之差最小。 求集合(任意输出)思路: 容易想到,首位配对的方法去取出来,差值必为0或1(差值为绝对值) 难点在选取。 现在知道差值为0或1 按照奇偶分为两个集合 从后往前检查,如果差值不为0或1 那么讲两个数字交换,交换后必然导致差值-2 当差值为0或1的时候,停止交换,即为答案。实现代码:#include <bits/s原创 2017-12-19 12:54:37 · 541 阅读 · 0 评论 -
codeforces Div.2 899B Months and Years
大意: 判断一个连续的月份数组是否正确思路: 没被hack,挂了(惨) 没有考虑完全,需要的数组应该包括 平年 平年 平年 闰年 平年 平年 平年 暴力查询匹配即可。原创 2017-12-19 12:47:53 · 336 阅读 · 0 评论 -
codeforces 900C. Remove Extra One
原题链接: 900C大意: 给出一个1-n的排列的一个数列,若对 ai 满足 ai>aj(j#include <bits/stdc++.h>using namespace std;#define mem(s,t) memset(s,t,sizeof(s))#define D(v) cout<<#v<<" "<<v<<endl#define inf 0x3f3f3f3f#define p原创 2017-12-17 14:07:17 · 463 阅读 · 0 评论 -
Codeforces Round #453 (Div. 2) ABCD题解
比赛链接: Div.2 #453A Visiting a Friend 大意: 0要达到线段上的某一点m, 已知线段上有若干个传送点a,a可传送到 [a,b] 上的任意一点,求能否从0到m点。思路: 记录当前能到达的最远点 s,不断更新,判断是否能到达(s>=m)即可。代码实现:#include <bits/stdc++.h>using namespace std;int main(原创 2017-12-20 10:33:58 · 400 阅读 · 0 评论 -
codeforces Div.2 899D Shovel Sale
大意: 给出一个数 n 求 1<= a , b <= n , 记 N = a +b 求末尾有最多连续的9的N,a,b 有多少(无序)组。两组是不同的当且仅当 有一个数不同。样例解释: input 14 output 9 hint: In the example the maximum number of nines at the end of total cost of two s原创 2017-12-19 17:42:00 · 651 阅读 · 0 评论 -
codeforces 801C Voltage Keepsake 二分答案
原题链接: codeforces 801C Voltage Keepsake大意: 有 n 个电器,第 i 个电器存有 aia_i 个电量,同时他单位时间内消耗的电量为 bib_i ,然后有一个无限电量的电池,单位时间内充的电为 pp ,一次只能给一个电器充电。现在求所有电器工作时间最长。Limits : 均为 1e5 思路: 答案是double类型,本来想别的做法看起来也不好算。 二分枚原创 2017-08-21 00:23:42 · 475 阅读 · 0 评论 -
codeforces #428 Div.2 B. Game of the Rows 贪心、思维
不是水题…写起来巨烦,写的时候思路断了就很不好连起来。原题链接: codeforces 839B大意: 一群人坐飞机。给出飞机的排数 n ,一排 8 座和 k 个 group 。 要求不同 group 的人不能座位相邻。 如图。{1,2},{3,4},{4,5},{5,6},{7,8} 是相邻的。给出几个有代表性的样例:input 2 2 5 8 output YESinput 1原创 2017-08-13 23:27:07 · 366 阅读 · 0 评论 -
codeforces Div.2 #429 B.Godsend C. Leha and Function
原题链接:B:Godsend大意: 一串数列。A,B 轮流取一些数字。 A 先走,每次从中抽取和为奇数的串,(抽完后自动缩为一个新串)。B 每次从中取和为偶数的串。最后一个无法操作的人输。思路: 博弈论水题。若和为奇数,那么 A 赢,若和为偶数, A 一开始若能从中抽走奇数,那么 B 输,否则 A 输。 比赛时hack看到的代码写法实在太多了。#include <bits/stdc++.h>原创 2017-08-20 14:29:00 · 563 阅读 · 0 评论 -
Round 1 D - Well-known Numbers CodeForces - 225B-K阶斐波那契数列
题目链接: https://vjudge.net/contest/168327#problem/DNumbers k-bonacci (k is integer, k > 1) are a generalization of Fibonacci numbers and are determined as follows:F(k, n) = 0, for integer n, 1 ≤ n < k;原创 2017-07-13 16:34:47 · 721 阅读 · 0 评论 -
Round 1 F - Rikka with Parenthesis II HDU - 5831-括号匹配
题目链接: https://vjudge.net/contest/168327#problem/FAs we know, Rikka is poor at math. Yuta is worrying about this situation, so he gives Rikka some math tasks to practice. There is one of them: Correct原创 2017-07-13 15:12:47 · 399 阅读 · 0 评论 -
#420 Div.2 C. Okabe and Boxes——模拟
题目链接: http://codeforces.com/contest/821/problem/C大意: 对栈结构给出一串 add 和 remove 的命令,相当于 push 和 pop,现在要求 remove 的东西按照 1 2 3 … n的顺序取走,问需要在操作中最少改变几次 add 的顺序。 input 3 add 1 remove add 2 add 3 remove re原创 2017-06-27 15:20:41 · 475 阅读 · 0 评论 -
#420 Div.2 B. Okabe and Banana Trees——数学&暴力
题目链接: http://codeforces.com/contest/821/problem/B题目大意: 给一个 特定形式的函数表达式 在内部做一个矩形(如图的矩形 分别平行xy轴)求矩形的价值最大,价值指每个整数点的横纵坐标和即 x+y分析: 本来想当然肯定是中间最大,后来发现看时间根本不用想, y 从 0 到 b 遍历一遍就好了 计算公式是:(x+1)x2(y+1)+(y+1)y2(原创 2017-06-27 14:50:47 · 541 阅读 · 0 评论 -
#421 Div.2 B. Mister B and Angle in Polygon——几何数学
题目链接: http://codeforces.com/contest/820/problem/B题目大意: 用 ∠a1a2a3 表示一个角 a1 a2 a3 分别表示正多边形上的顶点。 输入正多边形的顶点数 a 和要得到的度数 n 输出用a1a2a3表示正多边形里最接近 n 的度数。输出任意一组答案即可。input 3 15 output 1 2 3 input 4 67 ou原创 2017-06-28 18:17:55 · 494 阅读 · 0 评论 -
#416 Div.2 C. Vladik and Memorable Trip - DP&异或
题目链接: http://codeforces.com/contest/811/problem/Ctime limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard output Vladik often travels by trains. He rememb原创 2017-05-28 02:52:04 · 1586 阅读 · 8 评论 -
#416 Div.2 B. Vladik and Complicated Book - 排序&技巧
B. Vladik and Complicated Book time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard output Description Vladik had started reading a complicated book原创 2017-05-28 00:19:08 · 1125 阅读 · 0 评论 -
#416 Div.2 A. Vladik and Courtesy-water
A. Vladik and Courtesy time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard output At regular competition Vladik and Valera won a and b candies respec原创 2017-05-28 00:08:31 · 549 阅读 · 0 评论 -
#421 Div.2 D. Mister B and PR Shifts
题目链接: http://codeforces.com/contest/820/problem/D大意: 给一个数组 p[i] 求 值。 每次操作旋转一次数组(即最后一个数字变为第一个) 如 1 2 3 -> 3 1 2 求 的最小值 输出最小值和变换次数。 input 3 1 2 3 output 0 0 input 3 2 3 1原创 2017-07-03 22:46:05 · 908 阅读 · 12 评论 -
CodeForces - 581B - Luxurious Houses 逆序处理&水
题目链接: http://codeforces.com/problemset/problem/581/B B - Luxurious Houses CodeForces - 581B五月份竟然要过去了,回想起来也没做什么事情,前半个月忙于省赛,后面半个月,想起来只有两件事,自己的生日和整个小组连着通宵 3 天赶创新实践结题。生日那天,原本计划了很多,但是最近越来越没心情,干脆就叫了几个朋友撸串。原创 2017-05-31 22:03:49 · 700 阅读 · 0 评论 -
Round 1 A-"Or" Game CodeForces - 578B-思路-或
题目链接: https://vjudge.net/contest/168327#problem/ADescription You are given n numbers a1, a2, …, an. You can perform at most k operations. For each operation you can multiply one of the numbers by x.原创 2017-07-13 11:58:26 · 360 阅读 · 0 评论 -
codeforces #428 Div.2 C - Journey DFS路径长度与数学期望
原题链接: codeforces #428 C大意: 给出一棵树,从根节点 1 开始走,而且不往回走,直到走到叶子。走的过程中去下一个城市的城市概率相同,城市之间路径长为 1 ,求到所有叶子的所有路径的数学期望。思路: 建树,DFS跑一遍,记录路径长度与概率即可。 一开始没有 get 到概率,WA 了才发现。老实说不 WA 的话,根本没想到要考虑到概率,英文题害人…PS.这竟然是第一次做数学原创 2017-08-13 00:49:27 · 639 阅读 · 0 评论 -
Round 2 A - Cthulhu CodeForces - 103B -图同构,DFS
题目链接: http://codeforces.com/problemset/problem/103/B大意: 判断图的形状是否为一个章鱼型(?) 由几棵树构成,树的根节点围成一个环。思路: 只需判断一棵树内加一个环即可。 判断方法: 边数==顶点数 && 连通图#include<bits/stdc++.h>#define mem(s,t) memset(s,t,sizeof(s))原创 2017-07-13 19:12:56 · 587 阅读 · 0 评论 -
Round 3 F - k-Tree CodeForces - 431C - K叉树 树形DP
题目链接: http://codeforces.com/problemset/problem/431/C大意: 无限的完全 K 叉树,每层边权值分别为 1.2.3…K 要求至少经过一个 大于 d 的边 求和为 n 有多少种走法 思路: 树形DP,一道很好的 dp 题,方程推出来了,但是想歪了,一开始甚至想三维dp[i][j][k] 准备用上 n k d 实际上按照递推方程的写法来思原创 2017-07-17 15:15:40 · 520 阅读 · 0 评论 -
Round 3 E-Arpa's weak amphitheater and Mehrdad's valuable Hoses( 并查集 分组背包)
题目链接: div.1 741B大意: 有一群人,已知每个人的朋友、及她的体重、颜值,对于每个朋友集合,要么只取一个,要么全部取,要么不取,对于限制条件 W,求最大的价值。思路: 并查集+分组背包。(温习并规范了下并查集的写法)#include<bits/stdc++.h>using namespace std;#define D(v) cout<<#v<<" "<<v<<endl#de原创 2017-07-17 13:58:51 · 407 阅读 · 0 评论 -
#420 Div.2 A. Okabe and Future Gadget Laboratory——暴力
题目链接:http://codeforces.com/contest/821/problem/AAB题都是暴力 暴力水题,甚至觉得 B 比 A 简单 题意:如果这个矩阵里每个不是 1 的数都可以表示为纵向方向上的一个数和横向方向上的一个数之和 则输出 Yes 否则 No#include <bits/stdc++.h>using namespace std;typedef long long原创 2017-06-27 14:42:21 · 400 阅读 · 0 评论 -
Round 2 C - Colorful Graph CodeForces - 246D-染色-(并查集
题目链接: http://codeforces.com/problemset/problem/246/Dtime limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard output You’ve got an undirected graph, consis原创 2017-07-14 10:20:31 · 433 阅读 · 0 评论