rounding maximum 1857b cf
CF做题笔记
### CF R876 ##### D - Ball Sorting 首先不考虑小球的数量,假设有充足的小球,要求最少的移动次数,我们只需要拿出序列的最长上升子序列,这就是始终不会移动的小球的数量。 加上小球数量的限制。设始终不会移动的小球的集合为 $S$,显然集合需要满足单调上升,它们将整个序列分 ......
c++中正确使用round()来四舍五入计算
说明四舍五入的函数参数可以有多种数据类型。不同的数据类型有不同的结果。当他的参数应该是浮点数的时候,结果才是真正的四舍五入。 例子 /* g++ -g -std=c++17 ./src/basic_demo.cpp -o basic_demo */ #include <iostream> #incl ......
「解题报告」CF809E Surprise me!
好像是典题。 简单莫反一下。 $$ \begin{aligned} & \sum_{i=1}^n \sum_{j=1}^n \varphi(a_i \cdot a_j) \operatorname{dis}(i, j)\\ =& \sum_{i=1}^n \sum_{j=1}^n \frac{\va ......
CF1818D 题解
一、题目描述: 给你一颗 $n$ 个点,$m$ 条边的简单无向图,可能不连通。 我们定义 $鱼图$ 为满足以下条件的无向图: $包含恰好\ 1\ 个环,环上有\ 1\ 个特殊的结点\ u\ ,u\ 除了连在环上的\ 2\ 条边外还正好有\ 2\ 条边连向不在此环上的结点。$ 求是否存 $鱼图$。若存 ......
NSSCTF_Round13 web
flask?jwt? 1.信息收集 题目提示 这里告诉了这题涉及的内容 2.开始探索 (1)发现有注册,有忘记密码 然后这里尝试admin登录,但失败 所以直接注册一个用户 (2)注册后登录 给出页面,点了拿flag,访问/getFlag路由 但是告诉不是admin 然后根据题目信息里的提示应该就需 ......
Codeforces Round 876 (Div. 2)
# Preface DP腐乳闪总出列! (本来以为大掉分的一把,但这个号因为挺新的所以竟然还能上挺多分的,压线完成了5场上紫) 早知道去做E题了,感觉CF真得要看题目相性,有些题目就是一眼感觉不适合自己的说 # A. The Good Array 一个要动点脑子的签到题,因为$a_1,a_n$必须等 ......
NSSCTF Round#13 web专项
### rank:3 ## flask?jwt? 简单的注册个账号,在`/changePassword ` 下查看页面源代码发现密钥`` ,很好,老套路了,flask-session-cookie-manager伪造,把`_user_id` 改成1,访问`/getFlag` ,拿到flag ## e ......
Codeforces Round 876 (Div. 2)题解
# [Codeforces Round 876 (Div. 2)](https://codeforc.es/contest/1839 "Codeforces Round 876 (Div. 2)") ## [A. The Good Array](https://codeforc.es/contest ......
CF1329E Dreamoon Loves AA 题解
令 $p_0=0,m\leftarrow m+1,p_{m}=n,a_i=p_i-p_{i-1}$,设在 $(p_{i-1},p_i)$ 中有 $d_i-1$ 个 `B` 变成了 `A`,满足 $\sum_{i=1}^m(d_i-1)=k$,让 $k\leftarrow k+m$,这样 $d$ 需要 ......
「解题报告」CF768G The Winds of Winter
真的不难,为啥是 3300\*。还是模拟赛 T3,很气啊,为什么不先看这个题。 首先贪心很容易发现一定是将当前子树大小最大的那棵树的某个子树移动到最小的那个树内。那么我们记移动的这个子树的大小为 $x$,所有树中最小的树大小为 $a$,最大的为 $c$,次大的为 $b$,那么我们就是在最小化 $\m ......
「解题报告」CF936D World of Tank
~~lxl。~~ 模拟赛 T1。3000\*。不过好像确实不是很难,考场上做出来的。 首先这玩意看起来就很 DP 了。格子很多,但是离散化一下之后就很少了,可以直接跑 DP。那么我们考虑如何 DP 这个过程。 首先很容易发现一点,就是**我们攻击到的格子一定会经过**。否则显然攻击这个格子是没有意义 ......
「解题报告」CF1329E Dreamoon Loves AA
好题。 首先可以把题意转化一下,我们先把每相邻两个 A 的距离写成一个数组,然后对这个数组进行考虑。那么我们每改一个数,实际上就是将这个数组中的一个数分成两个数,我们要求的就是把这个数组分成 $K = k + m + 1$ 个数,最小化极差。 首先不难得出一点,就是每个数最后肯定是被均分成若干份一定 ......
CF1808E3 题解
## 题意 [传送门](https://www.luogu.com.cn/problem/CF1808E3) 求有多少包含 $n$ 位数码的 $k$ 进制数,满足存在一位数等于其他 $n-1$ 位数的总和模 $k$。 $1\le n\le 10^{18},1\le k\le 2000$。 ## 题解 ......
CSSYZ Algorithm Round #2
# [ABC192F] Potion ## 分析 设选择的总和为 $sum$。 不难发现: $x\%k=sum\%k$。 又因为: $ans=(x-sum)/k$。 不难发现$sum$只与$\%k$有关,且当$k$一定时,$sum$越大,$ans$越小。 因为$k$的值域很小,显然可以对于每一个$k ......
[LeetCode] 2101. Detonate the Maximum Bombs
You are given a list of bombs. The range of a bomb is defined as the area where its effect can be felt. This area is in the shape of a circle with the ......
CF321E - Ciel and Gondolas
考虑 $dp_{i,j}$ 表示用 $i$ 条船载走前 $j$ 个人的最小贡献,$w_{i,j}$ 表示区间 $[i,j]$ 里的人同乘一条船的代价。则 $dp_{i,j}=\min_{1\le k\lt j}(dp_{i-1,k}+w_{k+1,j})$。 我们发现,$w_{i,j}$ 可以通过 ......
Codeforces 1833E Round Dance
看到 `shortest paths` 来做的,但是好像没啥关系也没啥难度。 首先能知道一个连通块肯定一次就能跳完,所以可以把连通块缩出来。 然后有一个性质,记 $cz_i$ 为 $i$ 连通块内点种通过已知边推出的度数为 $1$ 的个数为 $cz_i$,则 $cz_i\bmod 2 = 0$。 记 ......
CF1759F
## CF1759F - 因为每次只对原数加 $1$,所以表示出来所有的数最多需要 $p-1$ 次(一共 $p$ 种数字,$in[1]$ 已经被表示出来了) - 对于输入数的最低位 $in[1]$,如果有比他小的数没被表示出来,那么一定存在进位(进位过程中,所有大于 $in[1]$ 的数全被表示出来 ......
Maximum Strictly Increasing Cells in a Matrix
Maximum Strictly Increasing Cells in a Matrix Given a 1-indexed m x n integer matrix mat, you can select any cell in the matrix as your starting cell. ......
SMU Spring 2023 Contest Round 5(2023 (ICPC) Jiangxi Provincial Contest -- Official Contest)
题目链接 Problem A. Drill Wood to Make Fire S * V >= n即可 #include<bits/stdc++.h> #define int long long #define endl '\n' using namespace std; const int N ......
【python】Python报错:RecursionError: maximum recursion depth exceeded in comparison
问题描述 今天测试程序的时候报错了 RecursionError: maximum recursion depth exceeded 通过查阅资料发现原因是查询过相关文档和资料后才发现了问题原因,python的递归深度是有限制的,默认为1000。当递归深度超过1000时,就会报错。 解决方案 可以将 ......
SMU Spring 2023 Contest Round 4(第 21 届上海大学程序设计联赛 春季赛)
A. Antiamuny wants to learn binary search 签到题. #include <map> #include <set> #include <cmath> #include <queue> #include <stack> #include <cstdio> #inc ......
CF101234A Hacker Cups and Balls【二分+线段树】
## Description 给一个长度为 n 的排列,对它做 m 次操作,每次对 [l, r] 区间内进行升序/降序排序。 问最后的序列处于最中心的数是多少(n为奇数)。 ## Solution 是一类没有写过的题,[参考题解](https://www.cnblogs.com/ShinaCloud ......
SMU Spring 2023 Trial Contest Round 11
A. The Text Splitting 题意:给出字符串长度,给出p和q两种切割方式,任选其中一种,把字符串分割输出结果。 题解:先进行判断,p和q是否能整个的分割n,利用p和q的函数关系判断(见代码),再计算有几个p几个q,再进行输出即可 void solve() { cin >> n >> ......
Round-Robin轮询调度法及其实现原理
轮询调度算法(Round-Robin Scheduling) 轮询调度算法的原理是每一次把来自用户的请求轮流分配给内部中的服务器,从1开始,直到N(内部服务器个数),然后重新开始循环。 算法的优点是其简洁性,它无需记录当前所有连接的状态,所以它是一种无状态调度。 轮询调度算法流程 假设有一组服务器N ......
「解题报告」CF739E Gosha is hunting
来南京第二天就感冒了,然后嗓子疼,头疼炸了。哈哈。 等等是不是春季赛前我也这个状态来着。呃呃。好像确实一模一样。 这玩意跟 DP 有个鬼关系。 下面两个概率用 $u_i, v_i$ 表示。 首先如果只选两者之一,贡献为 $u_i / v_i$,如果两者都选那么贡献为 $u_i + v_i - u_i ......
CF803 - EDU20
#### A 最优化字典序问题一般考虑贪心。我们从左上往右下一路扫描,然后贪心的往里填,只要当前的 $k$ 够就填一个。如果到最后 $k$ 都没用完就说明不存在方案。 #### B 一个位置最近的 $0$ 要么在左边要么在右边。考虑从左右各扫一次求出每个数到左边和右边最近的 $0$ 的距离。然后取 ......
[CF9D]How many trees?
# 2023-06-01 ## 题目 [题目传送门](https://www.luogu.com.cn/problem/CF9D) ### 难度&重要性(1~10):5 ### 题目来源 Codeforces,luogu ## 题目算法 dp ## 解题思路 深度最大为 $n\left(1\le n ......
「解题报告」CF1152F2 Neko Rules the Catniverse (Large Version)
发现有互不相等的限制,那就考虑一下连续段 DP。每次从小到大考虑每个数是否填,填的话填到哪里即可。 容易发现题目中的限制相当于要求每一个连续段的右边填的数不能与它差出 $m$,且容易发现每个段的差的要求一定不相等,那么我们可以直接 $2^m$ 状压记录每个连续段的差值要求。然后再记录一下是否已经确定 ......