Description题意就是一开始给出一个n*m的矩阵,然后每次把这个矩阵中的两个子矩阵的所有值交换,这两个子矩阵不能相交。输出最后矩阵的形态。Solution先考虑交换两个序列先考虑交换两个序列[l,r],[l1,r1]的所有值,就算交换了[l,r]里面的数还是相邻的,所以我们考虑维护每个点的右边那个节点是什么,每次交换的时候只用改4个值(l左边,r,l1左边,r1)他们的右边都要修改一下。
原创
2022-12-26 18:18:37
44阅读
DescriptionVasiliy is fond of solving different tasks. Today he found one he wasn't able to solve himself, so he asks you to help.Vasiliy is given n s...
转载
2017-10-06 19:23:00
41阅读
2评论
time limit per test4 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputAuthor has gone out of the stories about Vasiliy...
转载
2017-10-06 19:23:00
58阅读
2评论
我果然一点组合数学都不会。 这里记录两个小 trick,因为短,所以就不分开了。 CF1525E \(n\) 个城市,\(m\) 个点,每秒等概率随机点亮一个未点亮的城市,被点亮的城市在此后第 \(j\) 秒能照亮距离 \(j+1\) 以内的点,求最后照亮点的期望。 首先转换成每个点的概率和是老套路 ...
转载
2021-08-03 10:10:00
108阅读
2评论
题干: 瓦西里喜欢在努力工作后休息,
原创
2022-06-15 16:09:11
68阅读
题意:题目大意:给出一个长度为 n 的序列,现在有 m 个位置被锁定,也就是无法进行操作,每次操作可以选择一个没有被锁定的位置,将其更改为任意数值,现在问最少进行多少次操作,可以使得整个序列变得严格递增思路:
原创
2021-07-06 10:12:39
200阅读
1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 #include 8 #include 9 #include 10 #include 11 #include 12 #include 13 #include 14 typedef long long ll; 15 #d...
转载
2018-07-18 09:14:00
138阅读
2评论
DescriptionSolution网络流一看就知道是网络流。最小割往网络流的方向去想,答案=所有的赞助-不要的赞助-喝茶的费用-牛变性的费用。 让不要的东西最小,就是经典的最小割模型。连边因为有牛还有人,所以要建立牛的点,还要建立人的点。 根据上面的想法,我们先解决牛的变性问题: 如果一头牛是雄性的,那么我们把S向i连一大小为变性的费用(bian[i])的边,如果割掉了这条边表示我让这头
原创
2022-12-26 18:24:17
88阅读
这道题正解本来是莫比乌斯反演,但是被神犇 @Aurora_Sley 暴力吊打标算艹过去了( 先筛出来 \(1\sim 2000\) 的所有质数,第 \(i\) 个质数记为 \(Prime_i\)。 设 \(f[x][a][b][c]\) 表示当前考虑到 \(Prime_x,\sum\limits^a ...
转载
2021-11-03 21:58:00
122阅读
2评论
http://codeforces.com/contest/359/problem/E题意:要关掉所有房间的灯,一个步骤要么开灯,要么关灯,要么向有灯的方向前进一格。输出一种关掉所有灯的方案。不能关掉所有灯输出NO往前搜索时点灯,后退时关灯。 1 #include 2 #include 3 #i...
转载
2014-08-27 16:56:00
93阅读
2评论
A.TPM 给出三个元素x,y,z,x表示max(a,b),y表示max(a,c),z表示max(b,c),请输出xyz。 推导后发现较大的两个元素必须一样,否则无解,然后输出两遍较小的元素,一遍较大的元素即可。 #include<bits/stdc++.h> using namespace std
转载
2020-07-18 15:02:00
105阅读
2评论
i207M给的题 省选前-小题解合集 给定一张有向图,每条边有边权。你可以花费边权的代价反转一条边,使得原图中没有环。最小化反转的边权的最大值。 首先二分,然后考虑判定。 转化为有些边可以翻转,有些边不可以翻转,使得图中没有环 我们把不能反向的边拿出来,然后跑拓扑排序判环,如果有环则无解,不然一定有
转载
2019-01-16 10:09:00
128阅读
2评论
倍增求LCA模板#include#include#include#include#define N 100100using namespace std;vectorvec,vec1[N];int head[N],cnt;struct Edg[N],dep[N],p[N][18];int an
原创
2023-09-15 09:25:43
65阅读
的数,首先可以所有的数都删去min,最后答案在加上min*m就好了。Code#inclu
原创
2022-12-26 18:25:40
58阅读
cf459E这题说的是给定一个n点m条边的带边权的有向图,从中找出一条路径(可以带环),该路径包含的边数最多,并且要求路径中的权值必须严格递增,然后对边进行排序完个后采用dp去解特殊判断一下边权值相等的时候就ok了#include #include #include #include /* run ...
原创
2021-07-28 13:49:58
236阅读
这题题目有点问题,应该是 \(b_i=\min\{a_i,a_{i+1}\}\),\(c_i\) 同理。 不过没什么影响。 根据题目可以发现,\(b_i\) 是 \(a_i,a_{i+1}\) 中较小的那个,而 \(c_i\) 是较大的。 所以 \(b_i>c_i\) 时无解。 观察一下样例,可以发 ...
转载
2021-09-04 22:40:00
96阅读
2评论
通过这道题,我对dfs有了更深的理解。 拿完快递走回来的路上突然想到可以以第一个作为标准答案,然后一个一个比对下去,不行的话就改。 不同的位置元素过多时,就没有答案。 想到这里就卡着了,第一个卡点是那我要修改哪位?修改完后会不会对原来的序列造成伤害? 标解是枚举可以修改的位置,再去check这应改行 ...
转载
2021-09-16 12:08:00
64阅读
2评论
首先%xtw,从她那边得到了一个非常巧妙的思路。 首先不难发现,因为最多进行 \(200\) 次操作,所以转成二进制之后前 \(8\) 位的数字是不会影响后面的位数的,因为每次 \(\times2\) 相当于是整体左移一位,相对距离没有影响,而 \(+1\) 能够变化的值不会超过 \(256\)。 ...
转载
2021-07-20 21:05:00
110阅读
2评论
令 $M=\max{a_i},m=\min{a_i},S=\sum a_i$ ,则 $M \cdot m \geq S$ 。 又因为 $S \geq m \cdot n$ ,所以 $M \geq n$ ,当且仅当所有 $a_i$ 相同时取等号。 又因为 $a_i \leq n+1$ ,所以 $M=n ...
转载
2021-10-31 09:11:00
118阅读
2评论
1.题目链接。水题一枚。一遍dfs过程中给所有的点交替编号即可。#includ
原创
2022-07-01 10:52:49
67阅读