codeforces segments 1858d trees
Codeforces Round 911 (Div. 2)
Codeforces Round 911 (Div. 2) D - Small GCD 思路:求Σf(ai,aj,ak),其实就是所有gcd(ai,aj)的贡献,那么ijk的顺序就不重要了,首先可以将a排序。 可以枚举j,求出Σgcd(ai,aj),i<j,且k的个数等于Σgcd(ai,aj)贡献的 ......
Codeforces Round 911 (Div. 2) D、E
CF1900D 从小到大排列,第\(i\)个元素作为最大值对答案的贡献为\(\sum_{x=1}^{i-1} \sum_{y=x+1}^{i-1} gcd(a_x,a_y)\),即区间\([1,i-1]\)两两元素\(gcd\)和,记作\(val_{i-1}\)。然后考虑用第\(i\)个元素更新 ......
Codeforces Round 911 (Div. 2) D. Small GCD
题目链接:https://codeforces.com/contest/1900/problem/D 对于已经排序好的数组 \(a\),我们需要计算: \[\sum_{i=1}^n\sum_{j=i+1}^n gcd(a_i, a_j) * (n - j) \]由于 \(\sum_{d|n} \ph ......
Codeforces Round 911 (Div. 2) D
D. Small GCD 题意 给定数组 \(a\) ,求出数组 \(a\) 中所有三元组中较小的两个元素的 \(gcd\) 的和. 分析 显然数组中元素的顺序不影响统计答案,为了方便先将数组排个序; 枚举中间的元素 \(a_j\) ,那么只有它前边的元素能与其产生贡献,它后边的元素个数就是这个贡献 ......
[ABC321E] Complete Binary Tree
思路:第一次先把往后距离为 $k$ 的点算出来,然后再每次往前走一个,考虑 $k-i$ 的情况。(具体见代码注释)。 代码: ```cpp#include <bits/stdc++.h>using namespace std;// headint sum[100],head=0;int n,x,k; ......
Codeforces Round 911 (Div. 2)
Codeforces Round 911 (Div. 2) A - Cover in Water 解题思路: 如果存在三个以上相邻的格子需要填,那么答案为二,否则有多少空格答案为多少。 代码: #include <bits/stdc++.h> using namespace std; using l ......
CF1900 C Anji's Binary Tree 题解
Link CF1900 C Anji's Binary Tree Question 给出一个树,每个节点上有一个字母 L/R/U ,从 \(1\) 号根节点开始,L 表示接下来走到左节点,R 表示接下来走到右节点,U 表示接下载走到父节点 问,最少修改几个节点上的字母使得从根节点走到叶子节点 Sol ......
Top Tree
总归要学的。 先写一下理解比较困难的点。 考虑 SATT 的建立过程:首先在树里面找到一个Compress Tree,这个树满足中序遍历写下来是根簇路径深度从小到大排列,然后根簇路径上挂着的小簇Rake起来,这个 Rake 的过程是容易的,考虑对于每一个直接连接的小簇,把他变成子问题,然后给一个代表 ......
从一次前端公共库的搭建中,深入谈谈tree shaking相关问题
项目背景 随着业务的积累,前端项目之间逐渐会产生许多可以跨项目复用的逻辑或组件。比如对前端数据库 indexedDB 的封装、对 fetch 请求进度和中断请求功能的扩展、以及可能会在多个项目使用的 react 和 vue 组件。当前已经有一个公共库专门用来收敛 js 的逻辑复用,但是随着相同技术栈 ......
Codeforces Round 911 (Div. 2) A-C
Codeforces Round 911 (Div. 2) A. Cover in Water 题意: 有n个单元格,有的空着有的被堵住,可以做两种操作:给一个空着的单元格放入水;将单元格的水移到另一个单元格。并且,若一个单元格左右两边都有水,它也会自动充满水。所有空着的单元格都要充满水,求最少的放 ......
Codeforces Round 911 (Div. 2)
2023 11 27 A. Cover in Water 题意是:有一片坑,可以进行两个操作,一个是在一个坑里倒水,一个是把水到在另一个坑里,如果一个坑的左右两边都有水,那么这个坑也会有水 思路:想想发现,只要有三个连续的坑,那么所有的坑都可以被填上,如果没有就只能一个一个的填。 using nam ......
Codeforces Round 911 (Div. 2)
A - Cover in Water 三个连续的 . 就可以造出无限水,这时直接输出 \(2\),否则输出区间长度和。 Submission B - Laura and Operations 每次操作不会改变不需要的两个数的个数的和的奇偶性,而当这个和为偶数的时候,通过若干操作一定可以全部变成另一个 ......
Codeforces Round 911 (Div. 2)
比赛录屏 \(A. Cover in Water\) https://codeforces.com/contest/1900/submission/234430348 \(B. Laura and Operations\) https://codeforces.com/contest/1900/su ......
Codeforces Round 911 (Div. 2) A
真的太菜了…… 题目链接:Problem - A - Codeforces // Problem: A. Cover in Water // Contest: Codeforces - Codeforces Round 911 (Div. 2) // URL: https://codeforces. ......
Educational Codeforces Round 158 (Rated for Div. 2)
A - Line Trip 最后一段需要往返。 \[ans = \max(\max\limits_{i=1}^{n} a_i-a_{i-1},2(x-a_n)) \]Submission B - Chip and Ribbon 相当于问:每次给一个区间减一,最少需要选择多少个区间使得所有数变成 \( ......
[Codeforces] CF1799B Equalize by Divide
序列操作(divide.cpp)—CF1799B—1200 题目描述 给您一个 \(a_1,a_2,\dots a_n\) 这样的正整数数组,您可以对它进行多次(可以是零次)这样的操作: 选择两个索引 \(i,j(1 \leq i,j \leq n,i \neq j)\); 将 \(a_i\) 赋值 ......
[Codeforces] CF1747C Swap Game
游戏(game.cpp)—CF1747C—1200 \(时间:1s \space |\space 空间:250MB\) 题面翻译 Alice 和 Bob 两个人在玩游戏。 有一个长度为 \(n\) 的序列 \(a\),Alice 和 Bob 两人轮流完成一个操作,Alice 先开始。 每个人可以将数 ......
Segment Anything笔记
title: Segment Anything笔记 banner_img: https://drive.studyinglover.com/api/raw/?path=/photos/blog/background/1679396994125.png date: 2023-4-7 21:40:00 ......
Educational Codeforces Round 158 (Rated for Div. 2)
Educational Codeforces Round 158 (Rated for Div. 2) A - Line Trip 解题思路: 每次到加油站油都会加满,所以我们考虑到达两个加油站间需要的最大油量即可。 注意:最后一站的油量是一个来回。 代码: #include <bits/stdc+ ......
Educational Codeforces Round 158 (Rated for Div. 2)
Educational Codeforces Round 158 (Rated for Div. 2) 基本情况 A题很水,几分钟秒了。 B题想到一个解,被自己 hack 掉之后没有重新想,一直想在自己一开始的基础上改好,结果最后B都没拿下。 B. Chip and Ribbon 我的思路 其实也是 ......
CF1891 F A Growing Tree 题解
Link CF1891 F A Growing Tree Question 给出了一棵树,初始只有根节点,编号为 \(1\) 现在有两个操作 第一个操作:1 x 添加一个新节点 \(size+1\) ,这个新节点的父亲为 \(x\) 第二个操作 : 1 x val 给 \(x\) 的子树都加上 \( ......
Codeforces Round 686 (Div. 3)
A. Special Permutation #include<bits/stdc++.h> using namespace std; #define int long long //#define int __int128 #define double long double typedef pa ......
Educational Codeforces Round 158 补题(A~D)
A. 思路 找出最大耗油的路程即可 ac代码 #include <bits/stdc++.h> using namespace std; using i64 = long long; const i64 inf = 8e18; typedef pair<int, int> pii; void sol ......
Educational Codeforces Round 158 A-D
Educational Codeforces Round 158 A-D A. Line Trip 题意: 有一条路,从0到x,你需要开汽车从0到x再返回0,每个单位距离消耗一升油,出发时汽车满油,中间设有n个加油站,求油箱的最小容积 思路: 油箱中的油至少要能坚持从一个加油站开到下一个加油站,注意 ......
Educational Codeforces Round 158 (Rated for Div. 2)
A. Line Trip 题意是:有n个加油点,人要来回两趟,问你最少要多少油? using namespace std; int a[100]; void solve(){ int n,m; cin>>n>>m; for(int i=1;i<=n;i++)cin>>a[i]; int ans=a[ ......
Educational Codeforces Round 146 补题(A~C)
Educational Codeforces Round 146 (Rated for Div. 2) A. Coins 题目大意 给你两个整数n和k,问你是否存在两个非负整数x和y,使得 2⋅x+k⋅y=n 成立 思路 裴蜀定理秒了,记得开long long ac代码 #include <bits ......
Educational Codeforces Round 158 (Rated for Div. 2) A-C
A 大致题意: 有一条长度为x的直线公路,最开始你位于0号点并且此时你的油箱装满了油,公路有n个加油站,当你经过加油站的时候你可以在加油站加满油,每走一个单位需要花费1升油量,起始位置和终点没有加油站,请问你的油箱容量至少为多少升才可以够你跑一个来回。 解题思路: 我们的路径大致是这样0 -> a[ ......
Educational Codeforces Round 158 (Rated for Div. 2) 补题AB
Problem - A - Codeforces 签到题,但是出现了一些问题,测试用例2一直没搞出来 思路很容易想到,汽车油量必须保证能够通过任意相邻的两个加油站,也就是数组里的a[i]-a[i-1]的距离,特殊的,第一次需要将a[0]=0这样进行初始化,其他的使数组从1开始赋值,对应从第一个加油站 ......
[Codeforces] CF1717C Madoka and Formal Statement
时间限制 \(1s\) | 空间限制 \(250M\) 题目大意 题目描述 给定一个数列 \(a_{1…n}\), 如果满足下面条件, 你可以使 \(a_i = a_i + 1\): \(i < n\) 且 \(a_i \leq a_{i+1}\) \(i = n\) 且 \(a_i \leq a_ ......
[Codeforces] CF1703F Yet Another Problem About Pairs Satisfying an Inequality
时间限制 \(2s\) | 空间限制 \(250M\) 题目描述 给你一个序列$ a_1, a_2, \dots a_n $ 。请计算出满足下面条件的 $(i,j) (1 \leq i, j \leq n) $个数 。 $ a_i < i < a_j < j $ . 输入格式 第一行包含一个整数 $ ......