codeforce
文章平均质量分 77
九野的博客
这个作者很懒,什么都没留下…
展开
-
Codeforces 396B On Sum of Fractions 规律题
题目链接:点击打开链接我们把 1 / { u(i)*v(i) }拆开-> (1/(u(i)-v(i)) * ( 1/v(i) - 1/u(i) )若n +1 是素数,则显然(1/(u(i)-v(i)) * ( 1/v(i) - 1/u(i) ) 这样完全相同的式子有 u(i)-v(i) 个那么就可以把前面系数约掉,那么剩下的式子就是 1/2 - 1/(n+1)若不是,则原创 2014-06-23 23:16:02 · 1334 阅读 · 0 评论 -
Codeforces 8D Two Friends 三分+二分+计算几何
题目链接:点击打开链接题意:点击打开链接三分house到shop的距离,二分这条斜边到cinema的距离#include#include#include#include#include#include#include#include#includeusing namespace std;#define ll int#define N 90#define原创 2014-06-25 00:07:02 · 1826 阅读 · 0 评论 -
Codeforces 96D Volleyball spfa
题目链接:点击打开链接题意:给定n个点m条边的无向图起点、终点下面m行表示边和边权再下面n行表示每个点有一辆出租车,这辆出租车能开的最远距离和搭乘这辆车的费用问到终点的最小费用开始感觉复杂度太大不好下手,暴力出奇迹。。Y一下即可得到 spfa套spfa注意inf要足够大,__int64#include#include#include#inclu原创 2014-06-23 18:12:33 · 1363 阅读 · 0 评论 -
Codeforces 338D GCD Table 中国剩余定理
题目链接:点击打开链接给定n*m的矩阵,[i,j]的点值为gcd(i,j)给定一个k长的序列,问是否能匹配上 矩阵的某一行的连续k个元素#include#include#include#include#include#include#include#includeusing namespace std;#define ll __int64ll gc原创 2014-06-22 23:12:49 · 1687 阅读 · 0 评论 -
Codeforces 309C Memory for Arrays 二进制模拟进位
题目链接:点击打开链接题意:给定n个箱子m个物品下面n个数字表示箱子的容量下面m个数字b1-bm 表示物品体积为2^bi大问最多有多少个物品可以放入箱子。思路:贪心,先放小的,小的不能放再放大的显然我们把n个箱子拆成二进制,然后模拟二进制减法运算。剩下就是简单模拟#include#include#include#include#include#in原创 2014-06-23 23:20:41 · 1366 阅读 · 0 评论 -
Codeforces 35E Parade 扫描线 + list
题目链接:题意:给定n个矩阵(底边总是贴着x轴)然后找到一条包围在矩阵上方的路径,输出路径上的点给定n下面n行给定 y [x1, x2] 表示矩阵的高度和2个x轴坐标思路:扫描线维护每段区间的线段 最大的y值则我们访问每个x轴坐标,就相当于访问x轴坐标向右最短的那个小区间上的最大y值。则可以得到[x,y] 和 [x+1, y] 这样2个点当我们发现存在高度差时(原创 2014-07-16 11:21:14 · 1325 阅读 · 0 评论 -
Codeforces 39J Spelling Check hash
题目链接:点击打开链接题意:给定2个字符串选择第一个字符串的其中一个字母删除,使得2个字符串完全相同问哪些位置可以选思路:hash求前缀后缀,然后枚举位置#include #include #include#include#include #include#include#include#includeusing namespace std;原创 2014-07-16 17:06:05 · 1923 阅读 · 0 评论 -
Codeforces 41D Pawn 简单dp
题目链接:点击打开链接给定n*m 的矩阵 常数k下面一个n*m的矩阵,每个位置由 0-9的一个整数表示问:从最后一行开始向上走到第一行使得路径上的和 % (k+1) == 0每个格子只能向↖或↗走一步求:最大的路径和最后一行的哪个位置作为起点从下到上的路径思路:简单dp#include #include #include#include#原创 2014-07-17 16:30:05 · 1217 阅读 · 0 评论 -
Codeforces 384E 线段树+dfs序
题目链接:点击打开链接题意:给定n个点,m个询问的无向树(1为根)下面n个数表示每个点的权值下面n-1行给出树操作1:x点权值+v, x的第 i & 1 的儿子-v, 第 !(i&1) 的儿子+v操作2:询问x点权值dfs把树转成序列根据深度把点分成2组分别用线段树维护。。然后Y一下#include#include#include#include原创 2014-06-24 16:33:01 · 1436 阅读 · 0 评论 -
Codeforces 126D Fibonacci Sums 求n由任意的Sum(fib)的方法数 dp
题目链接:点击打开链接题意:给定一个数n问把这个数拆成多个不相同的fibonacci数有多少种拆法#include#include#include#include#include#include#include#include#includeusing namespace std;#define ll __int64#define N 90ll n ,m原创 2014-06-24 18:11:28 · 1610 阅读 · 0 评论 -
Codeforces 362D Fools and Foolproof Roads 构造题
题目链接:点击打开链接题意:给定n个点 m条边的无向图 需要在图里增加p条边 使得图最后连通分量数为q问是否可行,不可行输出NO可行输出YES,并输出添加的p条边。set走起。。#include#include#include#include#include#includeusing namespace std;#define N 123456#defin原创 2014-06-21 19:08:02 · 1637 阅读 · 0 评论 -
Codeforces 374D Inna and Sequence 二分+树状数组
题目链接:点击打开链接给定n个操作,m长的序列a下面n个数if(co>=0)则向字符串添加一个co (开始是空字符串)else 删除字符串中有a的下标的字符直接在序列上搞,简单模拟#include#include#include#include#include#include#include#include#include#includeusing na原创 2014-06-25 11:15:55 · 1947 阅读 · 0 评论 -
Codeforces 39E What Has Dirichlet Got to Do with That? 博弈+记忆化搜索
题目链接:点击打开链接题意:给定 a个箱子 b个球 常数n (球和箱子都是各不相同的,不会出现有一样的物品)设 way = 把b个球放到a个箱子中的方法数, 若way >= n则游戏结束有2个人玩游戏。若当前轮到 X时1、 X选择增加一个箱子或增加一个球2、若增加完后方法数>=n 则X失败若先手必胜,则输出 Masha ,若先手必败则输出 Stas ,若为平局则输出原创 2014-07-16 17:05:47 · 1552 阅读 · 0 评论 -
CodeForces 7D Palindrome Degree 字符串hash
题目链接:点击打开链接#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define N 5001000#define mod 1000000007#define he原创 2014-06-27 00:14:49 · 1617 阅读 · 0 评论 -
Codeforces 10D LCIS 求最长公共上升子序列及输出这个子序列 dp
题目链接:点击打开链接题意:给定n长的一个序列再给定k长的一个序列求LCIS并输出这个子序列如有多解输出任意解。。= - = 敲的时候听着小曲儿pre的含义还没有想清楚,万万没想到就过了。。。#include#include#include#include#include#include#include#include#include#incl原创 2014-06-25 13:36:10 · 1944 阅读 · 0 评论 -
Codeforces 15C Industrial Nim 简单博弈
题目链接:点击打开链接题意:给定n下面n行,每行2个数u v 表示有v堆石子:u,u+1,u+2···u+v-1问先手必胜还是后手必胜思路:首先根据Nim的博弈结论把所有数都异或一下,看结果是0还是非0而这里因为数字太多所以想优化那么其实对于一个序列 u, u+1, u+2 ····显然 {4,5} {,6,7}, {8,9} 这样2个一组的异或结果就是1原创 2014-06-25 14:28:48 · 1743 阅读 · 0 评论 -
Codeforces 10C Digital Root 规律题
题目链接:点击打开链接#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define N 1000005#define ll __int64ll num[10],n;ll go(ll x){ ll ans原创 2014-06-25 18:31:40 · 1322 阅读 · 0 评论 -
Codeforces 15D Map 单调队列+构造
题目链接:http://codeforces.com/problemset/problem/15/D题意:给定n*m的矩阵,每个点都是一个地基,上面的数字表示该地基的高度。再给定a*b的小房子,要把a*b放在这个矩阵上,显然建房子要保证选取的地基高度一致。若不一致,则要把选取的a*b大的矩阵中所有地基都挖低使得和其中一块最矮的地基高度一样,花费是挖的高度和操作:选取当前花费最小原创 2014-06-26 00:20:10 · 1817 阅读 · 0 评论 -
Codeforces 12D Ball 树状数组模拟3个元素的排序
题目链接:点击打开链接#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define N 500005#define ll intll n;ll c[N], maxn;inline ll原创 2014-06-27 00:08:47 · 1830 阅读 · 0 评论 -
Codeforces 12E Start of the season 构造 一个n*n矩阵使得每行恰好有一个[0,n-1]且对称
题目链接:点击打开链接题意:给定一个n构造 一个n*n矩阵使得每行恰好有一个[0,n-1]且关于主对角线对称且主对角线必须全为0#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#defin原创 2014-06-26 17:43:16 · 1644 阅读 · 0 评论 -
Codeforces 429B Working out bfs构造
题目链接:点击打开链接题意:给定n*m的矩阵有一个人a从左上角↖走到右下角↘,只能↓或→走另一个人b从左下角↙走到右上角↗,只能↑或→走使得2个人的路径有且仅有一个格子是相交的。统计2个人的权值和(相交格子的权值和不计)问最大的权值和是多少。思路:首先转换一下题意,也就是找一个格子与4个角落连不相交的线。我们观察相交的那个格子,那个格子的上下左右必然对应着一个角原创 2014-05-12 15:34:42 · 2112 阅读 · 0 评论 -
Codeforces 16E Fish
题目链接:点击打开链接#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define N 18double b[1<<N], a[N][N];int n;int main(){ int i, j,原创 2014-06-28 11:33:59 · 1723 阅读 · 0 评论 -
Codeforces 6D Lizards and Basements 2 dfs+暴力
题目链接:点击打开链接#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define N 110#define ll intll n, a, b;ll h[N];vectorG,ans;voi原创 2014-06-28 12:44:17 · 1624 阅读 · 0 评论 -
Codeforces 13C Sequence dp
题目链接:http://codeforces.com/problemset/problem/13/C题意:给定n长的序列每次操作可以给每个数++或--问最少需要几步操作使得序列变为非递减序列#include#include#include#include#include#include#include#include#include#include#incl原创 2014-06-27 18:14:40 · 1247 阅读 · 0 评论 -
Codeforce 375B 给定5000的布尔矩阵 求最大面积的全1子矩阵
题目链接:http://codeforces.com/problemset/problem/375/Bn^2的复杂度#include#include#include#include#define N 5005using namespace std;int sum[N][N];//sum[i][j]表示 i列到j列都为1时 存在多少这样的行int a[N][N];原创 2013-12-25 19:21:26 · 1868 阅读 · 0 评论 -
Codeforce 364E 二维分治 包含K个1的 子矩阵个数
题目链接:http://codeforces.com/problemset/problem/364/E #include#include#include#include#include#define N 2550#define Mid(x,y) ((x+y)>>1)using namespace std;int n, m, K;__int64 ans原创 2013-12-21 14:54:09 · 3326 阅读 · 0 评论 -
Codeforce 337D 容斥+树形dp
题意:给定n个点的树 m个点中有小怪物 距离lm个点 表示该点有小怪物n-1表示树有一个u点存在大怪物,会把距离u点 告诉那些v点, 问所有可能的u点个数即:问树中 距离M点集 思路: #include #include #include #include #include #include #include #include原创 2013-12-21 14:01:39 · 1797 阅读 · 0 评论 -
codeforce 369E 离线树状数组+左端点排序右端点维护 一维下 求点集覆盖线段数量
题意:在一维的x轴上给定n个线段, m个询问每个询问 cut个点, 问该点集覆盖的线段数量 思路:ans[i] 表示 第 i 个询问的答案,设 ans[i] = n, 再减去 不在点集中的线段 对于所有线段[ l, r ] ,按线段左端点 l 递减排序,(相同时 r 大则大) 排序后:对于线段 i , j ( i【1】 i.l >= j.l (排序的第原创 2013-12-12 00:46:47 · 2074 阅读 · 0 评论 -
codeforce 342E 树链剖分 || 分块
#include#include#include#includeusing namespace std;#define yt eg[i].to#define lson l,m,a[rt].ls#define rson m+1,r,a[rt].rs#define pb push_backconst int N=100005,inf=1000001;int cn原创 2013-12-11 22:34:40 · 2395 阅读 · 0 评论 -
codeforces 366D 求1-n点最大区间长度 枚举区间左端+二分区间右端dfs判可行
题意:给定n个点m条边的无向图下面m条边 每条边都有一个区间,只有在该区间内的点可以通过 问从1-n点 最长 的一个区间 长度 枚举左端,二分右端,dfs判断是否可行 #include#include#include#include#include#include#include#includeusing namespace std原创 2013-11-25 19:32:13 · 2064 阅读 · 2 评论 -
Codeforces 429D Tricky Function 最近点对
题目链接:点击打开链接暴力出奇迹。正解应该是最近点对,以i点为x轴,sum[i](前缀和)为y轴,求任意两点间的距离。先来个科学的暴力代码:#include#include#include#include#include#includeusing namespace std;#define N 100050#define ll __int64ll a[N], su原创 2014-05-12 15:39:16 · 2082 阅读 · 1 评论 -
Codeforce 424C Magic Formulas 找规律
题目链接:http://codeforces.com/contest/424/problem/C题意:求Q值思路:找规律显然可以得到一个矩阵把这个矩阵画出来就能发现一个横向的规律和一个主对角线方向的规律#include#include#include#include#include#includeusing namespace std;#define goal 1原创 2014-04-25 18:33:32 · 1614 阅读 · 0 评论 -
Codeforces 414C Mashmokh and Reverse Operation 归并排序在线求交换序列后逆序数
题目链接:http://codeforces.com/contest/414/problem/C先复制一个思路:解法:2^n个数,可以联想到建立一棵二叉树的东西,比如 2,1,4,3就可以建成下面这样 [2,1,4,3] le原创 2014-04-08 18:14:33 · 2512 阅读 · 0 评论 -
Codeforces 14D Two Paths 树的直径
题目链接:点击打开链接题意:给定一棵树找2条点不重复的路径,使得两路径的长度乘积最大思路:1、为了保证点不重复,在图中删去一条边,枚举这条删边2、这样得到了2个树,在各自的树中找最长链,即树的直径,然后相乘即可#include#include#include#include#include#include#include#include#include#i原创 2014-06-27 22:55:34 · 1418 阅读 · 0 评论 -
Codeforces 15B Laser
题目链接:点击打开链接#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define N 5005#define ll __int64inline ll Abs(ll x){return x>原创 2014-06-28 23:19:49 · 1436 阅读 · 0 评论 -
Codeforces 18D Seller Bob java大数+贪心
题目链接:点击打开链接java:import java.math.BigInteger;import java.util.Scanner;public class Main { static int N = 5005; static BigInteger[] er = new BigInteger[N]; static BigInteger E = new BigInteger原创 2014-06-28 23:23:28 · 1618 阅读 · 0 评论 -
CodeForces 18E Flag 2 dp
题目链接:点击打开链接#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define N 505#define inf 1000000009#define siz 26char s[N][N];i原创 2014-06-29 11:29:53 · 1188 阅读 · 0 评论 -
Codeforces 16D logging 水题
题目链接:水题呵呵。。#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define N 110#define ll intstruct node{ int h,m; int hehe;}a原创 2014-06-27 18:11:33 · 1166 阅读 · 0 评论 -
Codeforces 5D Follow Traffic Rules 水题
题目链接:http://codeforces.com/problemset/problem/5/D题意:给定一条马路长为l,方向→在距离起点d 千米处有一个限速牌,上面写着速度为w一辆车→行驶,加速度为a,最大速度为v经过d点的瞬时速度必须问开完这条马路的最短时间水水地~#include#include#include#include#include#in原创 2014-06-27 18:17:28 · 1151 阅读 · 0 评论 -
Codeforces Round #192 (Div. 2) B
题意:求所有城市间,从任意城市出发,经过1条或2条边能到达其他任意城市所需建的最小边数第一行给定n,m代表n个城市下面m行输入:u,v代表u和v之间不允许建边 输出首先是建立的边数然后下面输出这些边思路:输出个星X图(忘记叫什么名字了。。离散里的)就是找一个能和所有点建边的点(不允许边中度为0),然后这个点和所有点建边即可B. Road Constructi原创 2013-07-24 21:44:13 · 1559 阅读 · 0 评论