随笔分类 - ACM——OJ--Codeforces
摘要:"题目链接" 题意 给出m个数b,这些数是由n个数a两两异或组成的,问初始的那n个数分别是多少。 思路 存在多组解的情况...原来是个构造题。 考虑这样一种情况:b1 = a1 ^ a2,b2 = a2 ^ a3,b3 = a1 ^ a3。那么只要确定了a1,就可以求出a2和a3了。那么可以假设a1
阅读全文
摘要:"题目链接" 题意 给出一个n\ m的酒店,每个点是一个房间,要将这个酒店的房间划分成为两块(一块无烟区,一块吸烟区),相邻的两个房间之间有一条带权边,权值代表空气锁的面积,如果把这条边给去掉,那么需要花费(空气锁的面积+开一个窗口传食物)\ 1000元。问需要的最少花费是多少。要注意 如果面积为0
阅读全文
摘要:"题目链接" 题意 给出一个n m的地图,人的当前位置是'S',还有不超过两个的箱子'X',任意多个按钮'B',不超过100个可以走的点'.',还有一个在边界的出口'E',当且仅当所有的按钮都被箱子盖住的时候,出口才会打开,人才可以走到出口,问最少需要的步数是多少。 思路 首先确定是搜索,那么状态表
阅读全文
摘要:"题目链接" 题意 给出一个n m的地图,还有一个操作序列,你原本是要按照序列执行操作的,但是你可以修改操作:删除某些操作或者增加某些操作,问从'R'到'E'最少需要多少次修改操作。 思路 和上次比赛做的一道字符串题目有点类似。 定义状态 dp[x][y][d] 代表在 (x,y) 这个点执行到了第
阅读全文
摘要:"题目链接" 题意 给出一个m m的地图,上面有n个点,现在需要用一个自定义面积的矩形笼罩住恰好n/2个点,并且这个矩形需要有一个点在至少一个角落上,问这个矩形最小的面积是多少。 思路 有点类似于扫描线。将y坐标离散化,沿着x轴扫过去,边加点边查找,注意这里一定要每次加一列(即x相同的时候要全加进去
阅读全文
摘要:"题目链接" 题意 有n次事件,q个队列,s个传感器。每个传感器接到一个队列,每个队列有一个容量。 接下来执行n次事件,每次事件都会有一个最大发送数据量d。和s个数据a,代表这次给每个s填入a的数据量。 每次事件执行完后都要将队列里面的数据发送总和为d的数据量。这一次事件的数据发送后队列剩余的数据可
阅读全文
摘要:"题目链接" 题意 有n个点,其中有m个点是铁矿,k个点是煤,从1号点出发,你可以派一些士兵跑向不同的点,问占领至少一个铁矿和一个煤的时候,最少需要占领多少个点。 思路 建两幅图,其中一幅是正向边,一幅是反向边。做三次BFS。 第一遍BFS:从1号点BFS一遍整个正向边的图,记录数组dis[0][i
阅读全文
摘要:"题目链接" 题意 有n个人,每个人有一个出现时间a和一个开枪时间b和一个距离d,在任意一个时刻,你可以选择炸人,你要炸一个人的花费是和他的距离d,并且所有的已经出现并且还没开枪的和你距离 using namespace std; define N 605 const int INF = 0x3f3
阅读全文
摘要:"题目链接" 题意 给出一棵有边权的树,然后给出q个查询,每次查询问两个结点的路径上的边的长度的中位数是多少。 思路 这道题目是用主席树(用权值当结点)和LCA来做的。 和之前做过的区间第K大类似,这道题目是把数组转化为树。儿子结点的线段树信息是继承了父亲结点的线段树信息(数组中是第i个结点继承了第
阅读全文
摘要:http://codeforces.com/gym/101341/problem/K 题意:给出n个区间,每个区间有一个l, r, w,代表区间左端点右端点和区间的权值,现在可以选取一些区间,要求选择的区间不相交,问最大的权和可以是多少,如果权和相同,则选区间长度最短的。要要求输出区间个数和选了哪些
阅读全文
摘要:http://codeforces.com/gym/101341/problem/I 题意:给三个N*N的矩阵,问a*b是否等于c。 思路:之前遇到过差不多的题目,当时是随机行(点),然后验证,不满足就退出。还有暴力弄的(当时的数据是500)。也提到过这样的解法,当时没用这种做法做一遍。 就是构造多
阅读全文
摘要:http://codeforces.com/gym/101097/attachments 题意:现在有k种颜色的木棍,每种颜色有ni根木棍,每根木棍有一个长度,问是否有三根木棍可以组成三角形,并且这三根木棍的颜色都不相同。 思路:忘了并不能直接枚举第i根,然后找i-1和i-2根,因为还有很多情况没考
阅读全文
摘要:http://codeforces.com/contest/348/problem/B 题意:给一棵树,每个叶子结点有w[i]个苹果,每个子树的苹果数量为该子树所有叶子结点苹果数量之和,要使得每个结点的各个子树苹果数量相等,求至少需要拿走的苹果数量。 思路:一开始以为只要使得所有子树之和相同就行了。
阅读全文
摘要:http://codeforces.com/gym/100623/attachments 题意:问1到n里面有多少个数满足:本身被其各个数位加起来的和整除。例如120 % 3 == 0,111 % 3 == 0,都算。 思路:老是写不出数位DP。。。 因为n最大为12位,所以取模的数最大可以是9*1
阅读全文
摘要:Gym 101205D 题意:f[0] = "0", f[1] = "1",接下来f[i] = f[i-1] + f[i-2],相当于字符串拼接。然后给出一个n和一个串s,问f[n]里面有多少个s。 思路:在int范围内的f[n]是n=31的时候,但是匹配的s的长度只有1e5,这时候n=27刚好大于
阅读全文
摘要:http://codeforces.com/gym/101246/problem/G 题意:有一个n个点m条边的有向图,现在可以修改某一条有向边使得其为无向边,问修改哪些边可以使得修改后的强连通分量的点数最多,输出。 思路: 要使得修改边后的强连通分量的点数最多,假设当前修改的边的入点为u,出点为v
阅读全文
摘要:http://codeforces.com/gym/101246/problem/H 题意:在二维平面上有n个点,从最左下角的点出发,每次走只能走在当前的点的右上角的点(xj > xi, yj > yi)。问在走了最长路径的前提下有哪些点是可能被走到的,哪些点是必须被走到的。 思路:比赛的时候以为是
阅读全文
摘要:http://codeforces.com/gym/100502/attachments 题意:有n个点,容量为tol,接下来n个关系,表示选了第i个点,那么第xi个点就必须被选。问最多可以选多少个点使得不超过容量tol。 思路:由题目样例可得,边可能出现自环的情况,这个时候这条边其实没用。然后因为
阅读全文
摘要:http://codeforces.com/gym/100502/attachments 题意:有n个地点,m条边,每条边有一个边权,0代表两个顶点都染成白色,2代表两个顶点都染成黑色,1代表两个顶点可能尚未染色,但是之后必须一个染成白色一个染成黑色。问是否有可能让这个图成功染色,如果可能输出染成黑
阅读全文
摘要:http://codeforces.com/contest/782/problem/B 题意:有n个人,每个人有一个位置和速度,现在要让这n个人都走到同一个位置,问最少需要的时间是多少。 思路:看上去很像二分搜索啊!枚举距离,判断是否有更少的时间,然后发现时间不随着距离单调增减,想起前两天被三分虐了
阅读全文