Codeforces Beta Round #5
A题,无聊的题目。
#include <cstdio>
#include <string>
#include <cstring>
#include <cmath>
#include <cstdlib>
#include <ctime>
#include <queue>
#include <vector>
#include <map>
#include <set>
#include <algorithm>
#include <iostream>
using namespace std;
set<string>st;
int main()
{
char str[];
int i,ans,temp,len;
ans = ;
temp = ;
while(gets(str) != )
{
len = strlen(str);
if(str[] == '+')
{
st.insert(str);
temp ++;
}
else if(str[] == '-')
{
st.erase(str);
temp --;
}
else
{
for(i = ;i < len;i ++)
{
if(str[i] == ':') break;
}
ans += (len - i - )*temp;
}
}
printf("%d\n",ans);
return ;
}
B题,无聊题目,1Y.
#include <cstdio>
#include <string>
#include <cstring>
#include <cmath>
#include <cstdlib>
#include <ctime>
#include <queue>
#include <vector>
#include <map>
#include <set>
#include <algorithm>
#include <iostream>
using namespace std;
char str[][];
int main()
{
int n,i,j,maxz,len,mod,st,z;
//freopen("a.txt","r",stdin);
maxz = ;
i = ;
while(gets(str[i]) != )
{
len = strlen(str[i++]);
maxz = max(len,maxz);
}
n = i;
mod = maxz%;
for(i = ;i <= maxz+;i ++)
printf("*");
printf("\n");
z = ;
for(i = ;i < n;i ++)
{
printf("*");
len = strlen(str[i]);
if(len% == mod)
{
st = (maxz - len)/;
}
else
{
st = (maxz - len)/ + z;
z = (z+)%;
}
for(j = ;j < st;j ++)
{
printf(" ");
}
for(;j < len+st;j ++)
printf("%c",str[i][j-st]);
for(;j < maxz;j ++)
printf(" ");
printf("*\n");
}
for(i = ;i <= maxz+;i ++)
printf("*");
printf("\n");
return ;
}
C题,乱搞题,我用栈找到左右括号对应的位置,然后再从头扫一边,利用这个标记,找到最长的。怀疑有可能超时,但还是过了。
#include <cstdio>
#include <string>
#include <cstring>
#include <cmath>
#include <cstdlib>
#include <ctime>
#include <queue>
#include <vector>
#include <map>
#include <set>
#include <algorithm>
#include <iostream>
using namespace std;
char str[];
int s[];
int flag[];
int main()
{
int len,i,top,maxz,ans,temp,dis;
scanf("%s",str);
len = strlen(str);
top = ;
maxz = ;
ans = ;
for(i = ;i < len;i ++)
{
if(str[i] == ')')
{
if(top == ) continue;
top --;
flag[s[top]] = i;
}
else
{
s[top++] = i;
}
}
for(i = ;i < len;i ++)
{
temp = i;
dis = ;
if(maxz > len - i + ) break;
while(str[temp] == '(')
{
if(!flag[temp]) break;
dis += flag[temp] - temp + ;
temp = flag[temp] + ;
if(temp == len) break;
}
if(dis == ) continue;
if(maxz < dis)
{
maxz = dis;
ans = ;
}
else if(maxz == dis)
ans ++;
}
printf("%d %d\n",maxz,ans);
return ;
}
D题,物理题,被题意绕了一下,注意只有d点限速,不是某一段路限速。然后就是各种if else 各种算。。
#include <cstdio>
#include <string>
#include <cstring>
#include <cmath>
#include <cstdlib>
#include <ctime>
#include <queue>
#include <vector>
#include <map>
#include <set>
#include <algorithm>
#include <iostream>
using namespace std;
int main()
{
double a,v,l,d,w;
double t1,t2,s1,s2,t3,s3;
scanf("%lf%lf%lf%lf%lf",&a,&v,&l,&d,&w);
if(w >= v)
{
t1 = v*1.0/a;
s1 = 0.5*a*t1*t1;
if(s1 > l)
{
printf("%.8lf\n",sqrt(*l*1.0/a));
}
else
{
printf("%.8lf\n",t1 + (l-s1)/v);
}
}
else
{
t1 = w*1.0/a;
s1 = 0.5*a*t1*t1;
if(s1 > d)
{
t1 = v*1.0/a;
s1 = 0.5*a*t1*t1;
if(s1 > l)
{
printf("%.8lf\n",sqrt(*l*1.0/a));
}
else
{
printf("%.8lf\n",t1 + (l-s1)/v);
}
}
else
{
t1 = v/a;
s1 = 0.5*a*t1*t1;
t2 = (v-w)/a;
s2 = (v+w)/*t2;
double v0;
if(s1+s2 > d)
{
v0 = sqrt(a*(d +(w*w//a)));
t2 = v0/a + (v0-w)/a;
}
else
{
t2 = t1 + t2 + (d-s1-s2)/v;
}
t3 = (v-w)/a;
s3 = w*t3 + 0.5*a*t3*t3;
if(s3 > l-d)
{
t3 = (-w+sqrt(w*w+*a*(l-d)))/a;
printf("%.8lf\n",t3+t2);
}
else
{
printf("%.8lf\n",t3+t2+(l-d-s3)/v);
}
}
}
return ;
}
E题,留坑吧。托了好久,想了错的思路。看了题解,两种做法,都是把最大的找出来,转化成链,然后用栈做,怎么做的,我也没看明白。
还有一种就是标记左边第一个大的l,右边第一个大的r,然后l-r之间有多少个相同的。就能求一个位置的对数了。
Codeforces Beta Round #5的更多相关文章
- Codeforces Beta Round #80 (Div. 2 Only)【ABCD】
Codeforces Beta Round #80 (Div. 2 Only) A Blackjack1 题意 一共52张扑克,A代表1或者11,2-10表示自己的数字,其他都表示10 现在你已经有一 ...
- Codeforces Beta Round #62 题解【ABCD】
Codeforces Beta Round #62 A Irrational problem 题意 f(x) = x mod p1 mod p2 mod p3 mod p4 问你[a,b]中有多少个数 ...
- Codeforces Beta Round #83 (Div. 1 Only)题解【ABCD】
Codeforces Beta Round #83 (Div. 1 Only) A. Dorm Water Supply 题意 给你一个n点m边的图,保证每个点的入度和出度最多为1 如果这个点入度为0 ...
- Codeforces Beta Round #13 C. Sequence (DP)
题目大意 给一个数列,长度不超过 5000,每次可以将其中的一个数加 1 或者减 1,问,最少需要多少次操作,才能使得这个数列单调不降 数列中每个数为 -109-109 中的一个数 做法分析 先这样考 ...
- Codeforces Beta Round #79 (Div. 2 Only)
Codeforces Beta Round #79 (Div. 2 Only) http://codeforces.com/contest/102 A #include<bits/stdc++. ...
- Codeforces Beta Round #77 (Div. 2 Only)
Codeforces Beta Round #77 (Div. 2 Only) http://codeforces.com/contest/96 A #include<bits/stdc++.h ...
- Codeforces Beta Round #76 (Div. 2 Only)
Codeforces Beta Round #76 (Div. 2 Only) http://codeforces.com/contest/94 A #include<bits/stdc++.h ...
- Codeforces Beta Round #75 (Div. 2 Only)
Codeforces Beta Round #75 (Div. 2 Only) http://codeforces.com/contest/92 A #include<iostream> ...
- Codeforces Beta Round #74 (Div. 2 Only)
Codeforces Beta Round #74 (Div. 2 Only) http://codeforces.com/contest/90 A #include<iostream> ...
- Codeforces Beta Round #73 (Div. 2 Only)
Codeforces Beta Round #73 (Div. 2 Only) http://codeforces.com/contest/88 A 模拟 #include<bits/stdc+ ...
随机推荐
- Dapper.NET 使用简单举例
概述 Dapper是.NET下一个micro的ORM,它和Entity Framework或Nhibnate不同,属于轻量级的,并且是半自动的.也就是说实体类都要自己写.它没有复杂的配置文件,一个单文 ...
- 【20140113-2】MyEclipse生成javadoc时出错:编码GBK的不可映射字符
今天生成java doc文档时,出现了如下所示的错误: 正在装入软件包 com.wisdom.test 的源文件...F:\workspace\StringUtils\src\com\wisdom\t ...
- .NET NLog 详解(二)
Git是个很好的源码管理系统,你可以瞬间切换为任何历史版本.为了更好的解析NLog这个组件,我们将时钟倒拨回2004年.(注意:NLog v0.9 has been released 是在2005-0 ...
- js this的使用举例
js this的使用举例 <script type="text/javascript"> function test(obj){ obj.style.width= ob ...
- wp8 入门到精通 聊天控件
<Grid > <Grid x:Name="bubble_right" VerticalAlignment="Center" RenderTr ...
- js判断访问的当前设备是手机还是电脑
function browserRedirect() { var sUserAgent = navigator.userAgent.toLowerCase(); var bIsIpad = sUser ...
- 向Word模板中填充数据
现在有这样的需求,给Word文档的指定位置填充上特定数据,例如我们有一个终端,用来打印员工的薪资证明,对于一个公司来说,他的薪资证明模板是固定的,变化的地方是员工姓名,部门,职位等.我们只需要将这些指 ...
- [Oracle] 生产上表的列类型更新
由于粗心,数据库脚本生成的时候错将一个类型NUMBER(5)的字段类型改为 VARCHAR2(5) 直接进行表修改会报错,因为数据已经存在,不能进行更新: ); 大体思路如下: 将要更改类 ...
- VS2012 OpenCV2.4.9 Debug可以允许,Release不可以
一个简单的程序 #include <iostream> #include <opencv2/core/core.hpp> #include <opencv2/highgu ...
- cocos2dx游戏开发——微信打飞机学习笔记(一)——开发准备
一.环境的搭建 1.Windows开发准备: (1)软件下载及安装 •下载Cocos2d-x 最新版本:http://www.cocos2d-x.org/download 或者从Cocos2d-x G ...