牛客多校Round 5】的更多相关文章

咕咕咕.... 去烽火台和兵马俑了…
Solved:1 rank:112 E. Music Game 题解说有个非简化的原题 bzoj4318 #include <bits/stdc++.h> using namespace std; typedef long long ll; ; ll n, m; ll p[]; ll comb[][]; ll pow_mod(ll x, ll y) { ll res = ; while(y) { ) res = res * x % mod; x = x * x % mod; y >>…
Solved:2 rank:164 签了两个oeis,但这样真的开心嘛…
Solved:3 rank:156 J. Heritage of skywalker 学习一下nth_element 可以o (n)的找出前多少大的元素 #include <bits/stdc++.h> using namespace std; typedef unsigned long long ull; int n; unsigned x, y, z; unsigned int tang() { unsigned int t; x ^= x << ; x ^= x >&g…
Solved:3 rank:195 F. take 官方题解:小 A 在打开第 i 个箱子后会交换手中的钻石和第 i 个箱子中的钻石 当且仅当第 i个箱子的钻石是前 i 个箱子打开后出现的所有钻石里最大的. 那么要算概率的话,前面箱子中钻石大于等于它的打开后就不能有钻石用树状数组维护一下 线段树(不会树状数组) 调了半天居然快速幂忘记写返回了 #include <stdio.h> #include <algorithm> #include <iostream> #inc…
Soved:3 rank:133 A.Ternay String 欧拉降幂一下 但是反复求phi会超时 但mod是同一个就可以记忆化一下 #include <bits/stdc++.h> using namespace std; typedef long long ll; ; ]; int len; map<ll, ll> mp; ll getphi(ll o) { if(mp[o]) return mp[o]; ll res = o; ll n = o; ; i * i <…
Solved:2 rank:306 跑路场..... A.PACM team 简单背包记录路径都写挂 退役算了 #include <bits/stdc++.h> using namespace std; ]; ]; ]; ]; ]; ][][][]; ]; int main() { int n; scanf("%d", &n); ; i <= n; i++) scanf("%d%d%d%d%d", &p[i], &a[i],…
Solved:3 rank:187 H.travel 题意:给一颗带有点权的树 找三条不相交的链 使得点权最大 题解:使用树形DP dp[x][i][0/1] 表示x节点选择i条链 有没有经过x的链 对于每一个回溯的状态 下面的结点已经处理好了 但是处理当前结点时还有一种有两条经过x的链 实际上他们可以合成一条链 为了避免重复计算 经过当前结点的权值在更新时计算 #include <bits/stdc++.h> using namespace std; typedef long long ll…
Solved:1 rank:249 E. Removal dp i,j表示前i个数删除了j个且选择了第i个的答案 类似字符串的dp 预处理一下nex i_k即i后面k第一次出现的位置  就好转移了 #include <bits/stdc++.h> using namespace std; typedef long long ll; ; ]; ][]; ]; ll dp[][]; int main() { int n, m, kk; while(~scanf("%d%d%d"…
2019牛客多校第一场 I Points Division(动态规划+线段树) 传送门:https://ac.nowcoder.com/acm/contest/881/I 题意: 给你n个点,每个点有两个属性a,b 需要将点划分为两堆,划分依据是对于在A划分中的任意点a和在B划分中的任意点b满足 不存在当a.x>b.x时,a.y<b.y 的情况 在A划分中的点可以给出其a属性的贡献,在B划分中的点可以给出其b属性的贡献 求最大贡献和 题解: 根据题意,我们可以得出结论,我们需要找的是一根折线,…