BUPT2017 springtraining(16) #6 ——图论】的更多相关文章

题目链接 A.容易发现最后字符的对应都是一对一的 或者说我们没办法出现最后多对一或者一对多的情况 所以只要算出 ‘a’ - 'z' 每个字符最后对应的字符即可 #include <cstdio> #include <algorithm> ]; ], s[]; int main() { ], s2[]; scanf("%d %d %s", &n, &m, s); ;i < ;i ++) a[i] = i + 'a', b[i] = i; wh…
https://vjudge.net/contest/162590 A: 不难发现,当L=R时输出L,当L<R时输出2. B: 贪心得配对.1和n配 2和n-1配,对与对直接只要花1个代价就可以跳到.所以答案是(n-1)/2 C: 先考虑形式于aaaab的串变形.若有n个a,不难看出次数f[n]=2^n-1.接下来我们对于原串S从左到右扫描,若遇到a则cnt++,若遇到b则ans+=f[cnt] D: 构造aabbaabb..的串即可. E: Ans=max(s[i]). 通过dfs进行染色,对…
题目在这里 A.手动打表找规律得组合数 n -= 2, m -= 2, ans = C(n, m) #include <bits/stdc++.h> using namespace std; typedef long long ll; ; ll fac[]; ll calc(ll x, ) { ll ret = ; , x = x * x % Mod) ) ret = ret * x % Mod; return ret; } int main() { ios::sync_with_stdio(…
题目在这里啊 A.最长上升子序列,范围很小所以写了简单的O(n^2)算法 #include <iostream> #define rep(i, j, k) for(int i = j;i <= k;i ++) #define rev(i, j, k) for(int i = j;i >= k;i --) using namespace std; typedef long long ll; ], f[]; int main() { ios::sync_with_stdio(false…
题目在这里 A.似乎是个并查集+??? B.10W的范围,似乎可以暴力来一发二分+sort? 但我猜正解可以O(nlogn)? C.单调队列入门题目 #include <cstdio> ], ans1[], ans2[]; struct queue_1 { ]; int l, r; queue_1(): l(), r() {} int front() { return q[l]; } void push(int i) { while(l <= r && q[l] + m…
这里是contest 8道题全部来源于 cf 的两场contest (出题人可真懒啊 Codeforces Round #411 (Div. 2)的ABCDE Codeforces Round #400 (Div. 1 + Div. 2, combined)的ADE 前一场的题解在这里 后一场的题解在这里…
这里这里 A.签到题 #include <cstdio> double a[] = {0.4, 0.16, 0.063, 0.025, 0.010, 0.004}; int main() { int n; double m; scanf("%d", &n);; ;i <= n;i ++) { scanf("%lf", &m); printf("Case #%d: ", i); ) puts("Too B…
https://vjudge.net/contest/174020 A.100条双向边,每个点最少连2个边 所以最多100个点,点的标号需要离散化 然后要求恰好经过n条路径 快速幂,乘法过程就是floyed就行了 #include <algorithm> #include <cstring> #include <cstdio> using namespace std; ; ]; struct matrix { ][]; matrix() { memset(c, 0x3f…
龟速补题.目前基本弃坑.已暂时放弃 D.I 两题. 下面不再写题意了直接说解法注意事项之类,直接放contest链接. https://vjudge.net/contest/151537 A.The Perfect Stall 很明显的二分图匹配,可以跑最大流 我是直接写的匈牙利算法,hungary,不是hungry (虽然读音差不多??? 事实证明浪了一个寒假我连hungary算法都不会写了 #include <cstdio> #include <vector> #include…
BUPT2017 wintertraining(16) #5 D POJ - 2823 题意 给定n,k,求滑窗[i,i+k-1]在(1<=i<=n)的最大值最小值. 题解 单调队列或堆. 入队的条件是当前的进入了滑窗范围. 出队的条件是当前不在滑窗范围. 代码 我用堆写的,但是堆写错了个小地方,查了很久才发现. #include <cstdio> #include <cstring> #include <algorithm> #include <qu…