222 g abc
ICPC2021Kunming G Find the Maximum 题解
Question Find the Maximum 给出一个树,每个点有一个权值 \(b_n\),求一条树上路径 \(V\),要求 \(\frac{\sum_{u\in V (-x^2+b_u x)}}{|V|}\) 最大,其中 \(x\) 是自己选择的一个树 Solution 先转化一下 \(\f ......
代码随想录算法训练营第十六天 |104.二叉树的最大深度,559.n叉树的最大深度,111.二叉树的最小深度,222.完全二叉树的节点个数
一、104.二叉树的最大深度 题目链接: LeetCode 104. 二叉树的最大深度 学习: 思路: 分别求左子树和右子树的高度,返回给根结点,加1之后是根结点的深度,这是后序遍历的思路 二、559.n叉树的最大深度 题目链接: LeetCode 559. N 叉树的最大深度 学习前: 思路: 后 ......
Javascript中,正则表达式起用 `g` 标志位后,这个正则居然是有状态的
const reg = /^[0-9]+/g reg.test('123') // expect true actual true reg.test('123') // expect true actual false reg.test('123') // expect true actual tr ......
222
import argparse import logging import os.path import sys import time from collections import OrderedDict import torchvision.utils as tvutils import nu ......
[ABC267F] Exactly K Steps 题解
[ABC267F] Exactly K Steps 题解 思路 首先发现,如果对于查询 \((u, k), k > 0\) 可行,那么对于 \((u, k - 1)\) 也一定可行,因为往回走一步就可以了,所以对于一个点可以找到离它最远的点,根据直径的结论,这个点一定是直径的端点之一。 为了方便做, ......
P2865 [USACO06NOV] Roadblocks G
原题链接 题解 1.在处理最短路的时候,我们采用优先队列的方法,即第一个出现的点一定是最小的,之后出现的点都是在其他点的基础上叠加的值,肯定不小于第一个。那么依然是这个思路,第二个出现的点一定是次短的。 代码 #include<bits/stdc++.h> using namespace std; ......
AtCoder_abc334
AtCoder_abc334 A - Christmas Present 题目描述 输入两个数 \(B,G(B \neq G)\) ,若 \(B\) 大,输出 Bat ,否则输出 Glove 。 解题思路 无 Code // Problem: A - Christmas Present // Con ......
P1339 [USACO09OCT] Heat Wave G 最短路入门题 Dijkstra/SPFA/Dijkstra+优先队列优化
目录朴素的 Dijkstra 算法SPFA 算法Dijkstra + 优先队列优化 题目链接:https://www.luogu.com.cn/problem/P1339 题目大意:无向图有单源最短路。 朴素的 Dijkstra 算法 时间复杂度 \(O(n^2)\)。 #include <bits ......
linux编译器:gcc/g++的使用
原文连接:https://blog.csdn.net/weixin_72060925/article/details/131274627 原文链接:https://blog.csdn.net/qq_65207641/article/details/128629904 一、编辑器与编译器的区别 vim ......
Atcoder ABC 333 F - Bomb Game 2
题目大意(采用0#语言):有n个人,每个人每次要么被“炸掉”,要么就被移到最后面去,概率都是1/2,求最后只剩下初始时排名为第i的人的概率。 这道题跟人数有关,而且跟位置有关。 我们定义dp[i]表示一共有i个人,第i个为最后一位留下来时的概率。 (不想写公式) 定义j从0到i - 1,表示从前面i ......
[ABC265F] Manhattan Cafe 题解
[ABC265F] Manhattan Cafe 题解 思路解析 很有思维难度的一道题。思路是dp,\(f[i][j][k]\) 表示已经计算了 \(i\) 维,距离点 \(p\) 的距离为 \(j\) ,距离点 \(q\) 的距离为 \(k\) 时的整点 \(r\) 个数,由此可见我们的每一维都可 ......
ABC334 全套题解
A - Christmas Present 简单题。 void slv() { int a = Read<int>(), b = Read<int>(); if (a > b) Puts("Bat"); else Puts("Glove"); return; } B - Christmas Tree ......
AtCoder Beginner Contest 334 G Christmas Color Grid 2
洛谷传送门 AtCoder 传送门 考虑相当于把每个标记点的边全部断掉,然后求连通块个数。 考虑一条边 \((u, v)\)(设 \(u < v\))的出现时间,不难发现是 \([1, u - 1] \cup [u + 1, v - 1] \cup [v + 1, n]\)。于是考虑直接套线段树分治 ......
题解 ABC334F【Christmas Present 2】
设 \(f_i\) 表示假设只有编号为 \(1\sim i\) 的点,此时的答案。\(f_n\) 即为所求。 显然有: \[f_i=\min\limits_{i-k\le j < i}\{f_j+dis(s\to j+1\to j+2\to\cdots\to i)\}+dis(i\to s) \]当 ......
题解 ABC334E【Christmas Color Grid 1】
先求出初始时绿连通块数量。 枚举每个红色格子,将其染成绿色本应增加一个绿连通块,但是它每与一个绿连通块相邻,就又会减少一个绿连通块。根据上述规则可以求出每个红色格子染绿后的绿连通块数量,求平均值即可。 时间复杂度 \(O(nm)\)。 // Problem: E - Christmas Color ......
题解 ABC334G【Christmas Color Grid 2】
先求出初始时绿连通块数量。 将一个绿色格子染成红色,会改变绿连通块数量,当且仅当这个绿色格子是孤点或割点。如果是孤点,会使得绿连通块数量减少一;如果是割点,会使得绿连通块数量增加它所在的点双数量减一。根据上述规则可以求出每个绿色格子染红后的绿连通块数量,求平均值即可。 时间复杂度 \(O(nm)\) ......
ABC251G
提供一个本质相同,但是不需要会向量也能做,而且很好想的方法。 首先发现凸包点少,也就意味着边少,考虑从边的方向寻找突破口。 考虑一个凸包的本质:若干个直线划分出若干个半平面,它们的交即为这个凸包。如果一个点对于每一条直线,都在于凸包的同侧,那么这个点就在这个凸包内。 这样直接暴力做仍然是 \(O(n ......
ABC321G
其实赛时可能可以做出来的,只是打了前 6 道想下班了,有点小小遗憾。 首先问题看起来很唬人,考虑转换一下。考虑已经固定 \(m\) 条边,对于一个集合 \(S\),什么时候会不与其他点有边。容易发现,此时需要满足 \(\sum[R_i\in S]=\sum [B_j\in S]\)。记这个数为 \( ......
ABC141F
偶然找到的线性基好题。 考虑 \(s=\bigoplus x_i\),则此时 \(b=s\oplus a\),问题变为 \(\max(a+(s\oplus a))\)。 然后观察 \(s\),有一个很典的想法是,\(s\) 为 \(0\) 的位上,\(a\) 如果是 \(0\) 则会产生 \(0\) ......
「杂题乱刷」AT_abc280_d
题目链接 舒服题。 考虑贪心,我们可以直接枚举到 \(10^7\),然后将 \(n\) 一直除以 \(n\) 和 \(i(1\le i \le 10^7)\) 的最大公因数,若到 \(10^7\) 时 \(n\) 还不为 \(1\),这时直接输出 \(n\) 即可。 参考代码: 点击查看代码 /* ......
「杂题乱刷」AT_abc280_e 题解
题目链接 期望 dp 板子题,我们直接设 \(dp_i\) 为怪物血量只剩下 \(i\) 时的概率即可,状态转移方程也很简单了,详见代码。 参考代码: 点击查看代码 /* Tips: 你数组开小了吗? 你MLE了吗? 你觉得是贪心,是不是该想想dp? 一个小时没调出来,是不是该考虑换题? */ #i ......
[ABC265E] Warp
首先,这一题很显然是一个 Dp。 考虑如何转移状态,因为一开始的坐标是 \((0,0)\)。 发现最后的坐标是 \((A\times i + C \times j + E \times k,B\times i + D \times j + F \times k)\)。如果是统计最后的种类的话,那么就 ......
3568 EC25-G调试4G和GPS功能
一、4G移植: 1. pid、vid添加: drivers/usb/serial/option.c 驱动里面已经默认有,这一步可以忽略.。 2. diff --git a/drivers/usb/serial/option.c b/drivers/usb/serial/option.c index ......
CH582,CH583,CH32V208等IC低功耗蓝牙系列2.4G例程RF_PHY/RF_PHY_Hop配对示例
RF_PHY和RF_PHY_Hop两个例程均可以采用这种思路,甚至可以组合使用,比如RF_PHY用来配对,RF_PHY_Hop用来数据通讯, 思路简介:该例程只要收发双方的地址,跳频频道等基础配置项一致即可进行无线通讯,因此可以衍生出其中一种较简单的配对思路,即: 1、初始化代码中使用默认地址,例如 ......
AtCoder_abc333
AtCoder_abc333 比赛链接 A - Three Threes 题目描述 输入一个 \(N\) 输出 \(N\) 个 \(N\) 。 解题思路 (这个题但凡学过都能写出来吧) Code // Problem: A - Three Threes // Contest: AtCoder - T ......
ABC265 复盘
ABC265 复盘 At 链接 LG 链接 [ABC265A] Apple 思路解析:判断一下一次性买 3 个便宜还是 3 个分开买便宜,选更便宜的方法尽量多买剩下的单独买即可。 #include<bits/stdc++.h> using namespace std; int n, x, y; in ......
CF1914 G Light Bulbs 题解
Link CF1914 G Light Bulbs Question 有 \(2n\) 盏灯摆放在一条直线上,每盏灯有一个颜色 \(a_i\) ,灯的颜色一共有 \(n\) 种,每个颜色的颜色的灯刚好两盏,灯开始都是熄灭的。你选择几盏灯先打开,然后通过以下规则让其他的灯打开 选择 \(i,j\) 是 ......
let a={name:'111',age:222} 如果b是空对象,a中的属性都是空,如果b中的属性是空,a中的属性是空
let a = { name: '111', age: 222 }; let b = {}; // Iterate over the properties of a for (let prop in a) { if (a.hasOwnProperty(prop)) { // Assign an em ......
AT_abc323_f [ABC323F] Push and Carry 题解
不难发现答案的下界为 \(|x_b-x_c|+|y_b-y_c|\),这是每步都推箱子的情况。 但很多时候并不能直接开始推箱子,所以人要先移动到箱子的后面(相对于目的地),再把箱子往目的地推。 比如这种情况(B 为箱子,C 为目的地): B.. ... ..C 推完箱子的一边后,还要走到另一边: ↓ ......