codeforces round 421 div2 补题 CF 820 A-E

Mister B and Book Reading 

O(n)暴力即可

#include<bits/stdc++.h>
using namespace std;
typedef long long int LL;
const LL N=1,M=1,MOD=1;

int main()
{//freopen("t.txt","r",stdin);
 int c,v0,v1,a,l;
 scanf("%d%d%d%d%d",&c,&v0,&v1,&a,&l);
 int nv=0,nr=v0;
 int ans=0;
 while(nv<c)
 	{
 	 nv+=v0;
 	 ans++;
	 if(nv>=c){printf("%d\n",ans);return 0;}
	 v0+=a;
	 v0=min(v0,v1);
	 nv-=l;
	 nv=max(0,nv);
	}
 return 0;
}

Mister B and Angle in Polygon

把正n边形放到圆内看,每个边的圆周角是相等的。剩下的,大家都懂。

做了这么多年题第一次碰到考平面几何的。。。。

#include <iostream>

int main(){
  int N,A;
  std::cin>>N>>A;
  std::cout<<"2 1 "<<std::max(3,std::min(N,(N*A+90)/180+2))<<std::endl;
  return 0;
}

  

Mister B and Boring Game

Mister B and PR Shifts

考虑对于每一个数可以预知在右移某些步数的范围内使答案变好,其余范围使答案不变或者变差,于是可以用线段树维护,然后求和。

但是n有100w  时限只有2s O(nlogn)可能超时 应该有O(n)的算法。

Mister B and Beacons on Field

时间: 2024-10-04 13:35:02

codeforces round 421 div2 补题 CF 820 A-E的相关文章

codeforces round 422 div2 补题 CF 822 A-F

A I'm bored with life 水题 #include<bits/stdc++.h> using namespace std; typedef long long int LL; const LL N=1,M=1,MOD=1; int main() {//freopen("t.txt","r",stdin); ios::sync_with_stdio(false); LL a,b; scanf("%I64d%I64d",&

codeforces round 418 div2 补题 CF 814 A-E

A An abandoned sentiment from past 水题 #include<bits/stdc++.h> using namespace std; int a[300],b[300],n,k; bool cmp(int a,int b) { return a>b; } int main() {//freopen("t.txt","r",stdin); scanf("%d%d",&n,&k); f

codeforces round#259 div2 B题(KMP)

先上链接:http://codeforces.com/contest/454/problem/B B. Little Pony and Sort by Shift time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output One day, Twilight Sparkle is interested in how to sort a se

codeforces round #499(div2) 做题记录

A. Stages 题意: 给你n个字母,你要选k个,你选择的相邻两个字母在字母表中必须满足中间至少隔一个字母,每个字母的权值是c-'a'+1,求最小权值和. k<=n<=50 题解:贪心,从前向后扫,满足题意的就加进去就可以了 1 #include<bits/stdc++.h> 2 #define ll long long 3 #define maxn 55 4 using namespace std; 5 int n,k; 6 char s[maxn]; 7 int w[max

Educational Codeforces Round 23 A-F 补题

A Treasure Hunt 注意负数和0的特殊处理.. 水题.. 然而又被Hack了 吗的智障 #include<bits/stdc++.h> using namespace std; int main() { int sa,sb,da,db,x,y; scanf("%d%d%d%d%d%d",&sa,&sb,&da,&db,&x,&y); sa=da-sa;sb=db-sb; if(sa<0)sa*=-1; if(

codeforces 447 A-E div2 补题

A DZY Loves Hash 水题 #include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> using namespace std; bool f[300]; int main() { long long int p,t; int i,j,k,m,n; cin>>p>>n; bool fs=0; memset(f,0,sizeof(f)); f

codeforces round #324(div2) E题 Anton and lra

这道E题真的毒瘤啊,看完题解后还花了三小时AC... 主要是让这个位置上的数字如果要换到前面,那么前面至少有一个要到这个位置上,交换就好啦. 交换之后更新位置,直到这个数字被交换到指定位置. 为了 简化操作,我们可以把所有目标序列(s列)中数字出现的位置替换p序列中的数字,这样目标序列转化成一个1到n的序列 #include<bits/stdc++.h> using namespace std; int p[2001]; int s[2001]; int pos[2001]; int tot;

codeforces round #257 div2 C、D

本来应该认真做这场的,思路都是正确的. C题,是先该横切完或竖切完,无法满足刀数要求,再考虑横切+竖切(竖切+横切), 因为横切+竖切(或竖切+横切)会对切割的东西产生交叉份数,从而最小的部分不会尽可能的大. 代码如下,虽然比较长.比较乱,但完全可以压缩到几行,因为几乎是4小块重复的代码,自己也懒得压缩 注意一点,比如要判断最小块的时候,比如9行要分成2份,最小的剩下那份不是9取模2,而应该是4 m/(k+1)<=m-m/(k+1)*k          #include<bits/stdc+

codeforces Round #250 (div2)

a题,就不说了吧 b题,直接从大到小排序1-limit的所有数的lowbit,再从大到小贪心组成sum就行了 1 #include<cstdio> 2 #include<iostream> 3 #include<algorithm> 4 #include<cstring> 5 #define N 200000 6 using namespace std; 7 int pos[N],a[N],s[N],f[N],la[N],b[N],i,j,k,ans,n,p