CodeForces - 789B 当时题意理解的有点偏差,一直wa在了14组.是q等于0的时候,b1的绝对值大于l的时候,当b1的绝对值大于l的时候就应该直接终端掉,不应该管后面的0的. 题意告诉你b1,q,l,m然后b1和q是一个等比序列的首项和公比,然后l是这个序列出现的数绝对值的最大值.m代表序列有m个数不能被计算在内.问你能写出的最多的序列的元素个数.如果有无限多个输出inf. 分析一下,首先就是无限多个出现的情况. 1.b1==0.此时的序列是无限个0,只要0不在m个数中就是inf,…
B. Masha and geometric depression 题意 在黑板上写数列,首项是b,公比是q,超过l时就停止不写.给定m个数,遇到后跳过不写.问一共写多少个数,如果无穷个输出inf. 题解 分类讨论要注意b大于l,则一个也不会写.(仔细读题!! 暴力的话,可以用map或者set,然后遇到重复的就是inf. 代码 const int N = 2000001; ll b,q,u,m; ll a[N]; int main(){ while(~scanf("%lld%lld%lld%ll…
[题目链接]:http://codeforces.com/contest/789/problem/B [题意] 让你一个一个地写出等比数列的每一项 (注意是一个一个地写出); 有m个数字不能写; 且数字大于l的不写(大于l了就停止不再继续写) [题解] 特判b1=0,q=0,q=1,q=-1的情况就好; 有个很坑的地方就是,如果b1>l了,那么b2..bn就不能再计算了,因为在b1处就已经停止了:->在q=0的时候要先判断b1是不是大于l,是大于l就不用再考虑后面的0了. 具体的看代码吧. […
/* CF789B. Masha and geometric depression http://codeforces.com/contest/789/problem/B 水题 各种特判,贼烦 */ #include <cstdio> #include <algorithm> #include <cstring> #include <cmath> #include <vector> #include <queue> #include…
链接 B. Masha and geometric depression 题意 给你一个等比数列的首项和公比q,然后给出一个上限l,m个数字,在这个等比数列里,小于l且没有在m个数字里面出现过的可以写在黑板上,问最后能写在黑板上的数字有多少个 做法 坑点主要都在b1和q上,我们只需要特判掉和q=0或者=0的情况,然后用set存m个数字(可以去重),再暴力到>=l就可以了. 代码 /*set容器中count(x)返回x的数量1或0,se.find(b1) == se.end()判断b1是不是不在s…
Codeforces 题面传送门 & 洛谷题面传送门 大家都是暴力找生成树然后跳路径,代码不到 50 行(暴论)的一说--好,那本蒟蒻决定提供一种代码 150 行,但复杂度也是线性的分类讨论做法. 首先大家都是从"如果存在两个环相交,就一定存在符合要求的路径"这个性质入手的,而我不是.注意到题目条件涉及"简单路径",因此我首先想到的是,如果两个点 \(u,v\) 之间存在三条互不相交的路径,那么 \(u,v\) 在同一个点双连通分量中必定是必要条件,因此不同…
模拟一下那个过程,直到绝对值超过l,或者出现循环为止. 如果结束之后,绝对值是超过l的,就输出当前写在黑板上的数量. 如果出现循环,则如果写在黑板上的数量非零,则输出inf(注意!如果陷入的循环是一个全部被禁止的循环,但是黑板上有输出的值,则还是应该输出黑板上的值的数量.这种情况用循环再向后扫几项判一下即可.),否则输出0. 用三个set处理. #include<cstdio> #include<set> using namespace std; typedef long long…
Codeforces 题面传送门 & 洛谷题面传送门 期望好题. 首先拆方差: \[\begin{aligned} &E((x-E(x))^2)\\ =&E(x^2)-2E(x)E(E(x))+E(E(x)^2)\\ =&E(x^2)-E(x)^2 \end{aligned} \] 因此我们只需 \(E(x^2)\) 和 \(E(x)\) 即可求解出答案. 考虑 \(x\) 是什么东西.直接从连通块个数的角度下手异常棘手.不过注意到原图是一个仙人掌,因此假设点数.边数.环数…
A. Rounding time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Vasya has a non-negative integer n. He wants to round it to nearest integer, which ends up with 0. If n already ends up with 0, V…
Codeforces 题面传送门 & 洛谷题面传送门 分类讨论神题. 首先看到最大值最小,一眼二分答案,于是问题转化为判定性问题,即是否 \(\exists x_0,y_0,z_0\) 满足 \(\forall i,|x_0-x_i|+|y_0-y_i|+|z_0-z_i|\le mid\). 柿子中带个绝对值,不好直接转化.不过注意到对于任意实数 \(x\) 都有 \(x\le |x|,-x\le |x|\),因此 \(|x-y|\le v\) 的充要条件即是 \(x-y\le v,y-x\l…