首页 > TAG信息列表 > 第三场
百度之星初赛第三场 2 4 6
感觉B和D都有问题,但是就按照正常思路写吧。。 B:如果是平方数,且该数的根是质数,就是YES,否则NO; #define int ll const int N= 1000010; int n; int primes[N], cnt; bool st[N]; void get_primes(){ for(int i=2;i<=N;i++){ if(!st[i]) primes[cnt++]=i; for(i2022牛客暑假第三场C、A、J、H、F题
咕咕咕了好久,因为H题去学了后缀自动机,顺手学了后缀数组,学了好久(其实主要还是因为懒) C-Concatenation_"蔚来杯"2022牛客暑期多校训练营3 (nowcoder.com) C题本意不是签到题,也刻意卡了log算法,但是卡得不够彻底,sort的cmp加个引用就过了。 数据量特别大,而且全是string,不可能把log卡得2022 杭电多校 第三场 A - Equipment Upgrade
题意 一把武器要升级到 \(n\), 每次尝试升级要花费 \(c_i\), 有 \(P_i\) 的概率成功升级到 \(i + 1\) 级, 失败会降级, 降 \(j\) 级的概率如下 \[\left(1-p_i\right)\frac{w_j}{\sum_{k=1}^i w_k} \]现给出 \(c_i\), \(P_i\)(以百分制形式给出), \(w_i\), 保证 \(P_0 = 100\) 思路2022 杭电第三场题解
2022 杭电第三场题解 11 给队友贡献了 10 发罚时哈哈哈哈哈哈哈哈哈 1 Equipment Upgrade 当时我把这题丢给队友,队友写了一会儿就 A 了,我还以为什么简单题,结果赛后一看不会做。。。 怎么说呢,把所有 \(E\) 表示成 \(a\times E_0+b\) 确实挺妙的。剩下的就是分治 FFT 了。 2 Boss R【2022杭电多校】第三场 1009 贪心
链接 http://acm.hdu.edu.cn/showproblem.php?pid=7170 简化题意 给你n个区间,你需要往区间中填入一些点,(注意每个点最多覆盖在相同位置有交集的k个区间),使得这些点可以覆盖全部的n个区间,且点的总数最少 求点的数量的最小值 思路 贪心。 很容易想到把点填在 右端点最靠前的区间 的右2022牛客暑期多校第三场 I. Ice Drinking
2022牛客暑期多校第三场 I. Ice Drinking 题意 按随机顺序摆放 \(1,2,3,...,n\),设随机变量 \(x\) 为数字与位置(第几个)相等的个数,给定非负整数 \(k\),求 \(x^k\) 的期望。 分析 设错排方案为 \(P(n)\),根据组合意义,枚举正确的个数,剩下的全部错排的方案数之和就是全排列 \[n! = \sum_{2022春训第三场
补题链接 [D] 题意: 给出\(k\)和一个序列,求有多少个子区间的和是\(k\)的倍数。 $ 1 \leq n \leq 10^5, 1 \leq k \leq 10^9 $ 。 分析: 签到题,直接用\(map\)记录前面元素的前缀和就行了,或者枚举\(k\)的幂次然后双指针。 但是没过。要注意\(k=1\)的情况,还要注意一直累加\(k\)的幂次2022牛客冬令营 第三场 题解
A题 智乃的Hello XXXX(签到) 输出 \(\text{hello xxx}\),其中 xxx 可以是任意字符串 随便输出个啥来签下到就行,不过还是建议跟一个 ASCII码构成的字符串,防止乱码。 print("hello world") B题 智乃买瓜(01背包) 现在有 \(n\) 个瓜,第 \(i\) 个瓜的质量为 \(w_i\)。 现在,对于每个瓜,我牛客寒假基础补题 —— 第三场
这场因为收拾东西准备回家所以没有打,刚刚回家了补一下。 B.智乃买瓜 背包 int n, m; int w[maxn]; int dp[maxm]; void solve() { cin >> n >> m; dp[淘汰赛第三场 赛后总结
E 走呀走 二维DP。 #include<cstdio> #include<iostream> #define ll long long using namespace std; ll a[2000][2000]; ll ans[2000][2000]; int main(){ ll n,m; scanf("%lld%lld",&n,&m); for(ll i=1;i<=n;i++){ for(ll j=1;j<2018牛客多校第三场B(基环树dp)
题目大意: n ( ≤ 1 e 5 ) n(\le1e5)2021牛客多校第三场 B - Black and white(kruskal+桶排序)
可以发现将整张图涂完需要n+m-1次,而每涂完一个点,这个点便可以影响到此点所在的一整列和一整行,我们考虑每填涂完一个点后将这些行和列放入一个连通块,则容易得出:当所有行和列连通时,填涂完毕。 行和列的总和一共有n+m,填涂需要n+m-1次,需要用到连通块,这三点结合起来容易让人想到Kruskal2021.牛客暑假多校 第三场 补题
B 题 https://ac.nowcoder.com/acm/contest/11254/B 最小生成树 大意:给定一个n * m 的白色棋盘,现要将白色棋盘染成黑色,每个格子对应一个染色的价值,如果一个 “田字格” 已经有三个格子被染成了黑色,那么可以免费将第四个格子也染成黑色。问将棋盘全部染成黑色的最小花费是多少2021杭电多校赛第三场
Rise in Price 因为题目保证数据随机,根据官方题解所说,我们只需要维护当前状态最大的前几个状态,最终答案大概率就在这些状态中,我们每次保存从上次状态转移来的前\(100\)个最大状态,不断进行维护即可。 #include <bits/stdc++.h> using namespace std; #define int long long const i2021“MINIEYE杯”中国大学生算法设计超级联赛 第三场 赛后总结
1001.Bookshop 题意 给定一棵树,树上的点有点权\(a_{i}\),每次给出一个询问\(x,y,w\),表示对于一条从\(x\)到\(y\)的路径上的每个点做一次判定,若该点\(a_{i}\geq w\),则使\(w=w-a_{i}\),否则不做操作,最后查询走完路径后\(w\)的权值。 关键trick (markdown还不太会,摆烂)这题我们第【蓝桥杯历年题】2020蓝桥杯A组省赛第三场
文章目录 试题 A: 数青蛙(模拟)>答案:353 试题 B: 互质(最大公约数)>答案:1008 试题 C: 车牌(爆搜)>答案:4002750 试题 D: Fibonacci 集合(多路归并)>答案:41269 试题 E: 上升子串 试题 A: 数青蛙(模拟) >答案:353 个位数一位;11~19以及10的倍数两位;其余情况三位 #include <iostream>2021年度训练联盟热身训练赛第三场 L——Traveling Merchant(2*7线段树+查询时的区间合并)
题目链接 学长说也可以用倍增、或分块来做。我还是用思路最简单的线段树搞搞吧 题目大意: 1、n个城市,一个商人在一个城市买糖果,在另一个城市卖。(一个点买入,另一个点卖出) 2、商人只能一步一天的走,起点为x,终点为y,(可能x大于y),每个城市只能去一次,且只能顺序走,步长为1。 3、每个城2021年度训练联盟热身训练赛第三场(IH)
I. Slow Leak(最短路) 传送门 题意:你有一辆轮胎会跑气的自行车,打满一次气可以走的距离是d,一开始自行车的气是满的,城市中有 n 个点,你要从1点到 n 点,其中有 t 个点处可以给自行车打气,你只能在自行车有气的时候走,问从1到 n 的最短路 思路:先跑一遍floyd求出每两点之间的最短路,然后重超级码力初赛第三场 最大公倍数
题目描述 小栖有一个区间[a,b],他准备从中取三个数,他想知道如何取才能使得它们的最小公倍数最大 请直接告诉小栖最小公倍数是多少。 1<=a<b<=5000 b-a >= 2 示例 示例 1: 输入: a = 3, b = 6 输出: 60 样例解释: 4,5,6的最小公倍数是60 来源:九章算法 解题思路 每三个数为QDU校内排位赛第三场 D 于老师发生什么事了 (字典树+逆序对)
题链:https://pintia.cn/problem-sets/1330210570443206656/problems/1330211663055204354 题目: 思路1:字典树思想,插入一个数时,如果当前这一位是0,那么,之前插入的这一位是1的数都与他构成逆序对。插入时,统计一下每一位为1的数量即可。 #include <bits/stdc++.h> #define ll longMnnu第三场天梯选拔赛
Mnnu第三场天梯选拔赛 A. 原题链接 点我跳转 题目大意 给$n$个数,求出所有数对的最小公倍数的最大公约数 解题思路 我们对于某个数$a_i$,只要看它和区间$[i+1,n]$的每个数的最小公倍数,因为前面的部分会由前面的数和$a_i$去组合,我们不用重复计算。假如要求$a$对$b$、$c$的$lcm$ 的$gc2020 计蒜之道 预赛 第三场 C. 石子游戏(中等)
石子游戏(中等) 题意: 给你n个石子每个石子都有自己的质量和价值, 在给你q次询问每次询问一个区间,问在这个区间里 所有选的石子异或和为j的的价值最大是多少? 题解: 这题和简单版本的唯一不同是n变成了1e6 先来说一下官方的题解的解法: 用线段树维护,每个区间维护\(f[j]\)表示该区间中异或《HDU多校第三场》
Little W and Contest 思路:首先很显然是并查集去维护答案。 一开始,所有点都是独立的。那么设CF1 = 1的总个数。CF2 = 2的总个数 那么一开始ans = C(CF1,1)*C(CF2,2)+C(CF2,3). 那么考虑合并后怎么维护答案。 这里运用了容斥思想。 当我们合并后。我们只需要将之前合法的,现在不合法2020牛客暑期多校训练营(第三场)G Operating on a Graph
2020牛客暑期多校训练营(第三场)G Operating on a Graph 题解: 对于每一个节点,首先用并查集维护每一个节点属于哪一个组,然后再并节点,这个节点并起来可以用链式前向星来模拟,因为链式前向星是把一个点的所有的边记录变成一条链,所以并掉的点的临近节点就可以用前向星直接连起来,然后这个2020牛客暑期多校训练营(第三场)Points Construction Problem
2020牛客暑期多校训练营(第三场)Points Construction Problem 题解: 这个如果要知道每一个点涂成黑色,那么黑白点对的数量就是这个点的周长,那么这个题目就很简单了。 如上图,知道这个点了就可以自己思考了,注意图二其实就是这个图形的宽3加上这个高3乘以2,这个多边形求边长应该很简单吧