七月月赛T2】的更多相关文章

题目描述 “X龙珠”是一款益智小游戏.游戏中有 n(2∣n) 个编号互不相同龙珠按照给定的顺序排成一个队列,每个龙珠上面都有一个编号.每次操作时,选择并取出龙珠队列中相邻的两个龙珠,放到目标队列的末尾(目标队列最开始是空的,且这两个龙珠的前后顺序不变),然后去除原龙珠队列的空隙.反复多次,直到原龙珠队列为空.可见,因为决策不一样导致目标队列顺序不一样.现在请求出所有方案中.目标队列字典序最大的方案.只需要给出目标队列即可. 例如,当原龙珠队列是 [1,3,2,4] 时,可以先取出 3 和 2,此…
[BZOJ4956]lydsy七月月赛 I 题面 题解:傻题,Floyd传递闭包即可~ #include <cstdio> #include <cstring> #include <iostream> using namespace std; int map[30][30]; int n,m,l1,l2; char s1[60],s2[60]; int main() { scanf("%d%d",&n,&m); int i,j,k;…
[BZOJ4953]lydsy七月月赛 F 题面 题解:设f[i][j]表示第i个强度取为j时的最小误差.那么每次转移时,我们只计算j'和j之间的像素点带来的误差,于是有: $f[i][j]=min(f[i-1][k]+g(k..mid,k)+g(mid+1...j,j))|mid={k+j\over 2}$ 其中,$g(a,b)=P_a*(a-b)^2\\=P_a*a*a-2*P_a*a*b+2*P_a*b*b$ 于是维护P_a*a*a,P_a*a,P_a的前缀和即可. #include <c…
[BZOJ4952]lydsy七月月赛 E 题面 题解:傻题...二分答案即可,精度有坑. #include <cstdio> #include <cstring> #include <iostream> using namespace std; double eps=1e-9; int n,t; int d[1010],s[1010]; bool solve(double x) { double ret=0; for(int i=1;i<=n;i++) ret+…
[BZOJ4950]lydsy七月月赛 C 题面 题解:比较直接的想法就是:每行,每列的最大值都留下,剩下的格子都变成1.但是如果一个格子既是行的最大值又是列的最大值,那么我们只需要把它留下即可.这就变成了一个二分图最大匹配问题,乱搞即可. #include <cstdio> #include <cstring> #include <iostream> using namespace std; typedef long long ll; int n,m,cnt,now;…
T28312 「化学」相对分子质量 题目描述 做化学题时,小\(F\)总是里算错相对分子质量,这让他非常苦恼. 小\(F\)找到了你,请你来帮他算一算给定物质的相对分子质量. 如果你没有学过相关内容也没有关系,你可以从样例和提示里理解该题所求内容. 输入输出格式 输入格式: 输入一行,为一个长度为\(L \ (L≤100)\) 的不含空格的字符串,表示给定物质的化学式. 化学式仅包括以下内容: 元素:如\(Au\)(金),\(Hf\)(铪),出现的所有元素及其相对原子质量以附表为准. 下标:\(…
题干 洛谷同款 T2?(看似比T1简单些) 二维前缀和嘛?[多简单 我天天拿二维前缀和水DP] 这是前缀和的预处理 2333 处理出来所有的情况 某个地方要加上mod再%mod 如果没有这一步 那么 70pts 然后附带5%的分值飞走.2333 然后...就A掉了 #include <bits/stdc++.h> using namespace std; typedef long long LL; inline LL read () { LL res = ; ) ; char ch = get…
题目背景 借助反作弊系统,一些在月赛有抄袭作弊行为的选手被抓出来了! 题目描述 现有 2^n\times 2^n (n\le10)2n×2n(n≤10) 名作弊者站成一个正方形方阵等候 kkksc03 的发落.kkksc03 决定赦免一些作弊者.他将正方形矩阵均分为 4 个更小的正方形矩阵,每个更小的矩阵的边长是原矩阵的一半.其中左上角那一个矩阵的所有作弊者都将得到赦免,剩下 3 个小矩阵中,每一个矩阵继续分为 4 个更小的矩阵,然后通过同样的方式赦免作弊者……直到矩阵无法再分下去为止.所有没有…
题目描述 射命丸文在取材中发现了一个好玩的东西,叫做组合数. 组合数的定义如下:从n个不同元素中,任取m(m≤n)个元素并成一组,叫做从n个不同元素中取出m个元素的一个组合.所有组合的数量,就是组合数. $\sum_{i=1}^n \sum_{j=1}^m C^i_j$,其中当i>j的时候,钦定$C^i_j$​为0 她也很快就算出来了,不过对自己的答案不是很充满信心,因此你决定帮助她.然而没事找事的她一下子算了q次对于不同的n,m的结果,因此这只能劳烦你了.由于你不打算真正地帮助她,你无需把答案…
松江1843路 思路: 三分: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 100005 #define ll long long struct DataType { ll pi,val,sumval,sumpi; bool operator<(const DataType pos)const { return pi<pos.pi; } }; struct DataType ai[maxn]; ll…