【codeforces480E Parking Lot】教程文章相关的互联网学习教程文章

CodeForces - 820【代码】

Mister B and Book ReadingCodeForces - 820A 题意:C,V0,V1,A,L。.总共有C页书,第一天以V0速度读,每天加A,但是不能超过V1,并且要从前一天的看到的当前页数的前L页开始读#include<iostream> #include<cstdio> #include<cstring> usingnamespace std; int c,v0,v1,a,l,ans; int main(){scanf("%d%d%d%d%d",&c,&v0,&v1,&a,&l);while(c>0){ans++;if(ans!=1)c+=l;c-=v0;v0=min(v0+a,v1);}printf("%d",ans);return0; }AC 模拟Mister B...

Codeforces Round #568题解【代码】【图】

第一次遇到有9题的div2。。。 A题 排序后,伸展两边 #include<bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<int,int> pll; const int N=2e5+10; const int mod=1e9+7; ll a[4]; int main(){ios::sync_with_stdio(false);ll d;cin>>a[1]>>a[2]>>a[3]>>d;sort(a+1,a+4);ll ans=0;ans+=max(0ll,d-a[2]+a[1]);ans+=max(0ll,d-a[3]+a[2]);cout<<ans<<endl;return 0; }View Code B题 写了个臭暴力,因为输入...

Codeforces Gym - 101635K Blowing Candles [旋转卡壳]【代码】

题意:给你平面上一些点,求一个凸包的最短直径思路:旋转卡壳,然后搞一下就行了可旋转卡壳求最远点差不多,cur带表的是求出的对锺点,然后与当前的直线p[i],p[i+1],求一下距离代码:#include <bits/stdc++.h> usingnamespace std; constdouble eps = 1e-16; int sgn(double x) {if(fabs(x) < eps)return0;if(x < 0)return -1;elsereturn1; } struct point {double x,y;point(int _x = 0,int _y = 0){x = _x;y = _y;}point oper...

codeforces 462C Appleman and Toastman 解题报告【代码】【图】

题目链接:http://codeforces.com/problemset/problem/461/A题目意思:给出一群由 n 个数组成的集合你,依次循环执行两种操作: (1)每次Toastman得到一个集合,他计算所有数的和,并且将它加入到score里。之后他将这个集合传给Appleman。 (2)Appleman得到的集合如果只有一个数,就把它弃之,否则将这个集合分成 两个不相交且不空的集合,传回给Toastman. 这些操作不断执行直到集合个数变为0,也就是通过使集合都变成只...

Codeforces Round #706 (Div. 2) C,D【代码】【图】

Codeforces Round #706 C-Diamond MinerD-Lets Go Hiking C-Diamond Miner题意: 分别给定你一堆在y轴的上的点,和x轴上的点,一个y轴有且只有一个x轴的点和它连接,问最后这些点都互相链接之后,所有点对的距离和最小为多少? 思路: 我们把所有的点按照距离原点的距离排一下序,画一下图就可以发现,一定是从y轴距离原点最近的点去连此时还未连接的x轴上距离原点最近的点。 把这个四个点放到一个平行四边形中,很明显的两条对角...

codeforces gym 102268 300iq round【代码】

暂时只能写签到题,别的题解之后补A.Angle BeatsB.Best Subsequence有点有趣的二分显然二分之后就是找到一个长度恰好为k的合法环了先证明一个引理,如果可以找到一个长度大于k的环一定可以找到一个长度等于k的环固定头尾不动之后就可以使用归纳法证明一个长度大于3的环都可以删掉一个点为啥呢?,因为考虑任意三个连续的点,除非中间的点是最小值,否则都可以删掉这个点很容易证明长度大于3的序列至少存在一组三个连续的点满足中间...

Codeforces 1498D Bananas in a Microwave 题解【代码】

\(\mathcal{Solution}\) 设 \(f_i\) 为到达 \(i\) 的答案,不能到达则为 \(inf\)。 设 \(g_i\) 为考虑完前面的操作时,单独使用当前操作来到达 \(i\) 的最小步数,不能到达则为 \(inf\)。 每次读进一个操作就把 \(g\) dp 一次,然后更新 \(f\)。 具体的:初始化 \(g_i=\left\{\begin{matrix}0,f_i\neq inf\\inf,f_i=inf \end{matrix}\right.\)若 \(g_i\neq y\),则 \(g_{\left \lceil i+x \right \rceil }=\min(g_{\left \lceil i+...

Educational Codeforces Round 60 (Rated for Div. 2) E. Decypher the String【代码】

题目大意:这是一道交互题。给你一个长度为n的字符串,这个字符串是经过规则变换的,题目不告诉你变换规则,但是允许你提问3次:每次提问你给出一个长度为n的字符串,程序会返回按变换规则变换后的字符串,提问3次后你需要猜出这个字符串。解法是学习https://blog.csdn.net/baiyifeifei/article/details/87807822 这个博主的,借用了进制的思想非常巧妙。 解法:对于某个位置的来源位置我们设为x,因为26*26*26>10000,那么x可以唯...

【CodeForces 520E】Pluses everywhere【代码】

题意n个数里插入k个+号,所有式子的和是多少(取模1000000007) (0?≤?k?<?n?≤?105)。分析1.求答案,考虑每个数作为i位数(可为答案贡献10的i-1次方,个位i=1,十位i=2,...,最多n-k位):那么它及后面 共i个数 之间不能有加号。且只有前n-i+1个数可以作为i位,如果是an-i+1作为i位,那么后面都不能有加号,k个加号在a1到an-i+1之间,所以有C(n-i,k)次贡献(这么说怪怪的→_←),就是几种情况。a1 a2 a3 ... an-i+1 ... an如果是...

CodeForces 645C Enduring Exodus【代码】

枚举,三分。首先,这$n+1$个人一定是连续的放在一起的。可以枚举每一个起点$L$,然后就是在$[L,R]$中找到一个位置$p$,使得$p4最优,因为越往两边靠,距离就越大,在中间某位置取到最优解,所以三分一下就可以了。#pragma comment(linker, "/STACK:1024000000,1024000000") #include<cstdio> #include<cstring> #include<cmath> #include<algorithm> #include<vector> #include<map> #include<set> #include<queue> #include<stac...

C. Pekora and Trampoline(Codeforces Global Round 13)题解【代码】

题目链接:C. Pekora and Trampoline 思路:差分,经过仔细思考可以发现,最优解一定是都在1这个位置进行跳跃,因为假设1这个位置上的a[1]=1,那么他会跳到2,也就是具有传递性,直到跳到一个value不为1的地方,这和一开始就在该位置跳是一样的。证明了这个之后,我们进一步思考可以发现,i这个位置,可以对后面[i+2,min(a[i]+i,n)]产生影响,产生的影响是后面这些用跳的次数-1,然后再根据a[i]=1的传递性,如果位置j的value已经降...

Educational Codeforces Round 76 (Rated for Div. 2)E(dp||贪心)【代码】

题:https://codeforces.com/contest/1257/problem/E题意:给定3个数组,可行操作:每个数都可以跳到另外俩个数组中去,实行多步操作后使三个数组拼接起来形成升序。   输出最小操作次数dp:#include<bits/stdc++.h> usingnamespace std; constint M=2e5+5; int dp[M][3]; int a[M]; ///dp[i][0]表示前i个数全属于第一个数组所要花费的最小代价 ///dp[i][1]表示前i个数全属于第一、二个数组所要花费的最小代价 ///!!dp[i][1]必...

An overnight dance in discotheque CodeForces - 814D (几何)【代码】

大意: 给定n个不相交的圆, 求将n个圆划分成两部分, 使得阴影部分面积最大. 贪心, 考虑每个连通块, 最外层大圆分成一部分, 剩余分成一部分一定最优.#include <iostream> #include <iostream> #include <algorithm> #include <cstdio> #include <math.h> #include <set> #include <map> #include <queue> #include <string> #include <string.h> #include <bitset> #define REP(i,a,n) for(int i=a;i<=n;++i) #define PER(i,a,n) fo...

Codeforces 54E【代码】

对于两个贴在边上的顶点$A$,$B$,面积等于围成三角形面积减去$AB$围成的部分多边形面积。围成的多边形面积是确定的,我们希望三角形面积尽量小。设$C$为墙角顶点,那么$C$位于以$AB$为直径的圆上,显然希望$C$距离$AB$最近,所以当多边形的某条边贴在墙壁上时三角形面积最小。我们发现$A$,$B$存在单调性,那么可以双指针维护,面积则进行三角剖分维护,复杂度$O(n)$。#include <bits/stdc++.h> usingnamespace std; typedef longlon...

Codeforces Round #679 (Div. 1, based on Technocup 2021 Elimination Round 1)【代码】

Codeforces Round #679 (Div. 1, based on Technocup 2021 Elimination Round 1)T1 Perform Easilymean\(\quad\)给你6个数\(a_{1} a_{2} ... a_{6}\) ,再给你\(n\)个数\(b_{1} b_{2} ... b{n}\) ,问当所有\(b\)都减去任意一个\(a\)时,最大值减去最小值的最小值是多少idea\(\quad\)我们考虑将所有的\(b_{i}\)都与任何一个\(a_{j}\)相减,那么就可以得到一个预处理好的结构,我们考虑这个结构具有两种属性相减之后的数值,我们简数...