OJ----牛客
anthony1314
退役acmer 想要找到后端实习的菜鸡
展开
-
G. Chino with Train to the Rabbit Town 【异或前缀和】【牛客】【2019西北工业大学程序设计创新实践基地春季选拔赛】
题意:给你一个n, k代表有n个长度的序列让你求出最多有多少个不重合的区间的异或和为k题解:我们假设有 前m个数字的异或和为 sum[m]第m个数字为x sum[m] = sum[m-1] ^ x由于异或的性质:a ^ a =00 ^ a = aa ^ a ^ a = a所以当 sum[m] ^ k 在前面出现过 且没有 被消除过 则说明前面有区间异...原创 2019-04-12 11:16:43 · 190 阅读 · 0 评论 -
2019牛客暑期多校训练营(第二场) F Partition problem 【DFS】
题意:有 2*n 个人,要把2*n个人平均分配到红队和白队,现在输入一个2n * 2n的矩阵, 第a行第b列代表 第a个人在红队,第b个人在白队的所产生竞争价值,定义竞争价值总和为所有不在同一队的两个队员的竞争价值总和,现在要你求出最大竞争价值总和。题目链接:https://ac.nowcoder.com/acm/contest/882/F题解:直接暴力DFS, 时间复杂度 ...原创 2019-07-21 00:21:09 · 172 阅读 · 0 评论 -
2019牛客暑期多校训练营(第五场)H subsequence 2【拓扑排序】
题意:给你一个长度为n的隐藏字符串,由m个小写字符组成,接下来每一次会进行m*(m-1)/2次操作,给你两个不同的小写字符,以及把除这两个字符以外的字符删掉的字符串,以及他的长度,请问这个字符串是否存在,如果存在写出其中一种。题目链接:https://ac.nowcoder.com/acm/contest/885/H题解:拓扑排序基础练习题...对不起 我不会基础我们可以给...原创 2019-08-03 00:40:29 · 233 阅读 · 0 评论 -
2019牛客暑期多校训练营(第五场)I three points 1【计算几何】
题意:给你三个点x,y,z之间的距离,三个点一定可以组成三角形,要你输出三个点,且每个点的x坐标范围在0~w之间,每个点的y坐标范围在0~h之间,题目链接:https://ac.nowcoder.com/acm/contest/885/I题解:来自官方题解的两个结论:1. 若一个三角形能摆在一个矩形里,总是能经过平移使得三角形至少有一个顶点和矩形的顶点重叠,且三角形的顶点仍...原创 2019-08-03 11:59:29 · 169 阅读 · 0 评论 -
2019牛客暑期多校训练营(第六场)J Upgrading Technology【贪心+优先队列】【前缀和】
题意:初始有n个技能,初始等级为0,有1~m m个技能等级,升级需要成本,当n个技能都升级到某个等级以上就会给予奖励升级的成本和给予的奖励可能为负数,请问得到最大利润的状态下的利润是多少题目链接:https://ac.nowcoder.com/acm/contest/886/J题解:我的做法是对每个技能的升级到某个等级的费用先记录下来,就是对每个技能都做一遍前缀和,放进优...原创 2019-08-04 19:02:52 · 275 阅读 · 0 评论 -
2019牛客暑期多校训练营(第六场)D Move【暴力枚举(非二分)】
题意:你有n件行李,有k个箱子体积相同的箱子遵循下面的规则将行李放进箱子里面每次都取当前最大的可以放进箱子的行李放进箱子,如果该箱子放不进任何行李那么就换一个新的箱子再按照这一条规则进行放行李请问箱子最小的体积是多少可以放进所有行李题目链接:https://ac.nowcoder.com/acm/contest/886/D题解:答案居然没有单调性,失策了,比赛没读好...原创 2019-08-04 19:20:20 · 311 阅读 · 0 评论 -
2019牛客暑期多校训练营(第七场)C Governing sand【枚举】【贪心】
题意:有n种树,每种树有三种属性,高度h,数量p,砍掉一棵树的代价c(n < 1e5, h < 1e9, p < 1e9, c < 1e2)现在要你花费最少的代价砍掉一些树,使得剩下的树木最高的树木的数量超过剩下树木数量的1/2题目链接:https://ac.nowcoder.com/acm/contest/887/C题解:我们枚举高度,把比他高...原创 2019-08-09 11:26:06 · 309 阅读 · 0 评论 -
2019牛客暑期多校训练营(第七场)E Governing sand【树状数组+离散化】【二分】
题意:给你x1, x2, y1, y2, a1, a2, b1, b2, c1, c2, m1, m2;推导出接下来的每一项x和yXi = (a1 * Xi-1 + b1 * Xi-2+ c1) % m1Yi = (a2 * Yi-1 + b2 * Yi-2+ c2) % m2Ri = max(Xi, Yi)Li = min(Xi, Yi)...原创 2019-08-09 15:39:20 · 315 阅读 · 0 评论 -
2019牛客暑期多校训练营(第八场)A All-one Matrices【单调栈】【前缀和】
题意:输入 n*m 的01矩阵有多少个全1矩阵,不会被其他的全1矩阵覆盖题目链接:https://ac.nowcoder.com/acm/contest/888/A题解:单调栈+前缀和对于每-一个格子(ij) , 记up[il[j]为其向上的连续的1的个数。然后枚举每一行作为矩阵的底边所在行,从前往后枚举每一列 ,枚举时候,记录更新一个pos值,判断下一行该列为不为0, 方便为下面...原创 2019-08-11 02:05:02 · 236 阅读 · 0 评论 -
2019牛客暑期多校训练营(第二场) H Second Large Rectangle 【次大全1子矩阵和】【单调栈】
题意:给你一个n*m的只有 1 和 0 的矩阵, 求全是1的第二大的子矩阵的面积。题目链接:https://ac.nowcoder.com/acm/contest/882/H题解:听说是陈年老题,可惜我不会比赛一直在改就是不知道哪里错了qaq比赛后看到有人用暴力写法A过了,惊了,我copy了他的代码交了一发,tle,牛客的服务器让我觉得好迷然后看了队友的单调栈写法发...原创 2019-07-20 23:59:10 · 232 阅读 · 0 评论 -
2019牛客暑期多校训练营(第一场) J Fraction Comparision 【签到题】
题意:输入x, a, y, b, 求 和 的大小比较题目链接:https://ac.nowcoder.com/acm/contest/881/J题解:AC_code:#include<bits/stdc++.h>using namespace std;#define ll long long int main() { ll x,...原创 2019-07-19 16:11:50 · 163 阅读 · 0 评论 -
2019牛客暑期多校训练营(第一场) F Random Point in Triangle 【数学期望】
题意:给出三角形三个点的坐标,求三角形内随机选点到与三边形成的三角形的最大值的期望 * 36 。题目链接:https://ac.nowcoder.com/acm/contest/881/F题解:听群里的聚聚说是随机跑的点跑出的规律E = S*22/36 (公式)AC_code:#include<bits/stdc++.h>#define ll ...原创 2019-07-19 15:58:04 · 229 阅读 · 0 评论 -
C. Chino with Queue 【状压DP】【牛客】【2019西北工业大学程序设计创新实践基地春季选拔赛】
现在有n个人排成一队(2<=n<=18)给你一个n*n的矩阵Wij代表 i在j的前面的话 i给j带来多大的舒适度如果i排在最前面 前面没有人的话 则带来Wii的舒适度所以现在要你问你 怎么排 可以排出 最大舒适度的队伍 求最大舒适度是多少题解:由于n并不大 那么我们可以用一个0 ---- (1<<18 - 1)的范围表示当前有哪些队伍已经排好了...原创 2019-04-12 14:45:03 · 204 阅读 · 5 评论 -
G.路径 【树形DP】 【牛客】【桂林电子科技大学第三届ACM程序设计竞赛】
给定一棵N个点的树,每条边有边权,请你求出最长的一条路径,满足经过每个点最多一次,经过的边的条数为偶数,且边权和最大。请输出这个最大的边权和。传送门比赛以为 是要对个点都进行dfs,以为时间复杂度很大,看到树就怕了,没想到是一道树形DP太菜了!!!AC_code:/*Algorithm:树形DP Author: anthony1314Creat Time:Time...原创 2019-04-16 21:34:14 · 173 阅读 · 0 评论 -
B.Tachibana Kanade Loves Probability【简单模拟题】【牛客】【牛客练习赛43】
题意:题目等价于求分数的小数点后第k1到 k2位的所有数字直接暴力模拟除法过程是肯定会 T 的,但是我们发现我们不用从头开始模拟,只需要从 第k1位开始模拟就可以了。直接通过快速幂+取模算出第k1 位的数字。然后我们发现 ,所以暴力枚举除法过程就可以。ans<<3 + ans<<1 == ans * 10AC_code:#include&l...原创 2019-04-06 10:54:18 · 152 阅读 · 0 评论 -
A.串串 【后缀数组】【牛客】【桂林电子科技大学第三届ACM程序设计竞赛】
给你一个长度不超过 100000 的字符串(小写字母)求不同子串的个数题解:后缀数组后缀数组的原理后缀数组的模板和应用每个子串一定是某个后缀的前缀,及等价于求后缀之间不相同前缀的个数每个后缀可以提供 (n+1-sa[i])个子串,其中有height[i]个重复/*Algorithm: 后缀数组求 不同子串的个数 Author: anthony1314Creat ...原创 2019-04-18 21:34:56 · 222 阅读 · 0 评论 -
D.小a与黄金街道【快速幂】【欧拉函数】【牛客】【牛客寒假算法基础集训营1】
题目意思给你四个数字 n, k, a, b, 小a和 小b 分别从 1 走到 n-1, 从 n-1 走到 1, 每走一次长度为1设x为 a 当前的位置 , y为 b当前的位置当gcd(x, n) == 1 && gcd(y, n) == 1 时候, a += kx ,b += y。求a+b 答案模 1e9+7题解当x与n互质时候, (n-x)也与n互质,所以此题其...原创 2019-04-19 15:20:10 · 162 阅读 · 0 评论 -
2019牛客暑期多校训练营(第一场) A Equivalent Prefixes 【单调栈】
题意:给你两个数组,长度为n,让你求出 p, (1 <= p <= n), 在 1~p中 的任意区间, a数组和b数组的最小值下标一样题目链接:https://ac.nowcoder.com/acm/contest/881/A题解:用单调栈维护数组内的元素单调递减,记录下每个点的左边的比它小的数的所在的位置,如果两点的左边比它小的数的位置不同,那么肯定这一位就不...原创 2019-07-19 15:20:48 · 118 阅读 · 0 评论 -
2019牛客暑期多校训练营(第一场) B Integration 【裂项相消法】
题意:给n个不同整数, 求的值。题目链接:https://ac.nowcoder.com/acm/contest/881/B题解:参考大神博客:传送门所谓裂项就是:AC_code:#include<bits/stdc++.h>using namespace std;#define ll long longconst ll mod = 1e9+...原创 2019-07-19 15:33:29 · 180 阅读 · 0 评论 -
2019牛客暑期多校训练营(第一场) E ABBA 【DP】
题意:问你长度为2 * (n+m)的字符串由(n+m)个A和B组成,要求有n个AB子序列和m个BA子序列,这样的串有几个?题目链接:https://ac.nowcoder.com/acm/contest/881/E题解:f[now][index] 代表 当前状态下 前index个字符的方案数多少 假设有j个A 那么就有 (i - j)个B (i为当前位置, 可...原创 2019-07-19 15:49:37 · 130 阅读 · 0 评论 -
2019牛客暑期多校训练营(第八场)C CDMA【分形】
题意:构造一个 n*n 的 只有 1 -1 的方阵n为 2的1、2、3…10次方使得任意两行的内积为0题目链接:https://ac.nowcoder.com/acm/contest/887/C题解:根据样例推出规律用m的解推出2m的解m的解 为方阵 A2m的解 为A AA -A写法用分形AC_code:#include<bi...原创 2019-08-11 02:27:14 · 144 阅读 · 0 评论