【扬中集训DAY2T2】 机智的AmyZhi】的更多相关文章

[题目链接] 点击打开链接 [算法] 据说标算是暴力? 从N-200开始搜 不过我用了搜索+一些奇怪的剪枝,也A了.... [代码] 标程 #include<bits/stdc++.h> #define ll long long using namespace std; ll n,cases; bool check(ll x){ ll tmp=x; ;i<=;i++){ tmp+=x%; x/=; } ; ; } int main(){ scanf("%I64d",&…
那年一个雨季,AmyZhi 在校门外弯身买参考书. 这时 SiriusRen 走过来,一言不合甩给她一道“自认为”很难的题: --------------- 给你一个数字 NN(NN 的范围是 11 ~ 10000001000000),求一个最小的正整数 MM,这个数字 MM 的各个位的数字加上它本身之和恰好为NN. --------------- 没有想到 AmyZhi 秒解了这道题并把 NN 扩大到了 10^{18}10​18​​ 甩回给了 SiriusRen. SiriusRen 苦苦思索…
[题目链接] 点击打开链接 [算法] 建C棵线段树即可,注意要用前缀和优化 [代码] 这是标程 #include <bits/stdc++.h> using namespace std; , MAXC = , MAXN = * MAXR + ; int R, C, Q; int am0[MAXC][MAXR]; char grid[MAXR][MAXC]; bool mark[MAXN]; int am[MAXN][MAXC]; int change[MAXN][MAXC]; inline v…
[题目链接] 点击打开链接 [算法] 数据范围很大,显然暴力是不能通过的 我们可以先打表,发现答案为 : 41 109 205 325 473 649 853 1085 1345 观察数列的差 68 116 120 148 176.... 发现数列的差的差在第5项后每次差28,因此我们推出公式 ans(n) = 325 + 148(n-5) + 14(n-5)(n-6) [代码] #include<bits/stdc++.h> using namespace std; unsigned lon…
[题目链接] 点击打开链接 [算法] 对问题稍加分析后,发现其实要求的就是 : C(N,K) + C(N,K+1) + C(N,K+2) + ... + C(N,N) 因为N最大10^9,K最大10^5,很显然,我们不可能通过暴力或杨辉三角等来解决此题 我们发现 : C(N,K) + C(N,K+1) + C(N,K+2) + ... + C(N,N) = C(N,1) + C(N,2) + C(N,3) + ... + C(N,N) - C(N,1) - C(N,2) - ... - C(N,…
[题目描述] 白日梦 (daydream.c/cpp/pas) 时间限制: 1 s  空间限制: 256 MB 题目描述 SR需要相当大的睡眠量 某日,他做了一个奇怪的梦,他梦见自己成为了怪物猎人,为了狩猎,他要去一个岛上住N+1天(编号为0到N).这个岛位于太平洋中心,每天要么是晴天,要么刮台风. 他到达岛的第0天是晴天.然后对于第i天,假如是晴天,那么有P(0<p<=1)的概率会变天,使得接下来连续M天都刮台风,然后第i+M+1天必然会转晴. 天气对SR的狩猎造成了很大的影响,如果第i天是…
[题目链接] 点击打开链接 [算法] 链表,对于每个点,存它的上,下,左,右分别是谁 [代码] #include<bits/stdc++.h> using namespace std; #define MAXN 1000 struct node { int val; node *l,*r,*u,*d; } mat[MAXN+][MAXN+]; int i,j,x,N,M,Q,A,B,C,D,H,W; node *pos; template <typename T> inline v…
给定一棵n个点的图上的最小生成树,让你把它补成完全图,使得新图的MST还是给定的MST且边权和最小,输出需要增加的边权和. 设size[i]表示以i号为祖先的并查集的大小. 首先按边权排序,之后在做MST的过程中,答案cnt+=(size[v]*size[u]-1)*(w+1),来解释一下这个式子,从v号集合到u号集合每两个点之间连一条边(除了MST上的这条边),因为MST必须还是原来的MST,所以边权要加1,之后将集合合并直到求出MST为止即可. 下面给出参考代码: #include<iost…
今天是第二天集训.(其实已经是第三天了,只是昨天并没有机会来写总结,现在补上) 上午大家心情都很愉快,因为老师讲了splay树和ac自动机. 但到了下午,我们的教练竟然跑出去耍了(excuse me?),害的我们在一些不懂的地方冥思苦想浪费时间,效率极其低下,所以说只做了点模板题,以后这方面的知识还需要多多练习0.0 1.ac自动机 这东西是kmp的升级版本,由一个模式串升级到了多个模式串,效率依然高. 只要掌握了kmp,ac自动机一般不会有问题.哦,当然你也必须会trie树,这是自动机的基础…
[2018HN省队集训D1T3] Or 题意 给定 \(n\) 和 \(k\), 求长度为 \(n\) 的满足下列条件的数列的数量模 \(998244353\) 的值: 所有值在 \([1,2^k)\) 中 前缀或的值严格递增 \(n,k\le 3\times 10^4\) 题解 这题有点意思 首先肯定每一项都得有新出现的二进制位, 于是可以想到一个超简单的 \(O(nk^2)\) 的DP, 设 \(dp_{i,j}\) 为长度为 \(i\) 且已经出现了 \(j\) 个二进制位的数列的个数.…