Educational Codeforces Round 25
A
题意:给你一个01的字符串,0是个分界点,0把这个字符串分成(0的个数+1)个部分,分别求出这几部分1的个数。例如110011101 输出2031,100输出100,1001输出101
代码:
#include<stdio.h>
using namespace std;
int n;
char a[100];
int b[100];
int main()
{
while(~scanf("%d",&n))
{
scanf("%s",a);
int flag=0;
int k=0;
int cnt=0;
for(int i=0; i<n; i++)
{
if(a[i]=='1')
{
cnt++;
flag=0;
}
else
{
if(flag==0)
{
b[k++]=cnt;
flag=1;
cnt=0;
}
else if(flag==1)
{
b[k++]=0;
}
}
}
b[k++]=cnt;
for(int i=0; i<k; i++)
printf("%d",b[i]);
printf("\n");
}
return 0;
}
B
题意:五子棋,表示可以放旗子,x表示Alice的棋子,o是敌人的棋子,现在轮到Alice,问Alice是否能赢。
代码:
#include<stdio.h>
using namespace std;
char a[11][11];
int b,flag;
int main()
{
flag=0;
for(int i=0; i<10; i++)
scanf("%s",a[i]);
for(int i=0; i<10; i++)
for(int j=0; j<10; j++)
{
if(a[i][j]=='.')
{
b=0;
for(int k=i+1; (k<=i+5)&&k<10; k++)
if(a[k][j]=='X')
b++;
else
break;
for(int k=i-1; (k>=i-5)&&k>=0; k--)
if(a[k][j]=='X')
b++;
else
break;
if(b>=4)
flag=1;
b=0;
for(int k=j+1; (k<=j+5)&&k<10; k++)
if(a[i][k]=='X')
b++;
else
break;
for(int k=j-1; (k>=j-5)&&k>=0; k--)
if(a[i][k]=='X')
b++;
else
break;
if(b>=4)
flag=1;
b=0;
for(int k=1; k<=5; k++)
if((a[i+k][j+k]=='X')&&(i+k)<10&&(j+k)<10)
b++;
else
break;
for(int k=1; k<=5; k++)
if((a[i-k][j-k]=='X')&&(i-k)>=0&&(j-k)>=0)
b++;
else
break;
if(b>=4)
flag=1;
b=0;
for(int k=1; k<=5; k++)
if((a[i+k][j-k]=='X')&&(i+k)<10&&(j-k)>=0)
b++;
else
break;
for(int k=1; k<=5; k++)
if((a[i-k][j+k]=='X')&&(i-k)>=0&&(j+k)<10)
b++;
else
break;
if(b>=4)
flag=1;
if(flag==1)
break;
}
else
continue;
}
if(flag)
printf("YES\n");
else
printf("NO\n");
return 0;
}
C
题意:现在拥有的困难数为k,如果a[i]/2<=k,表示这个问题可以解决,如果啊a[i]>k/2则k*=2,直到a[i]<=k/2,并且k=max(k,a[i]),问k*=2的总次数,使得所有的a[i]<=k/2。
代码:
#include<stdio.h>
#include<algorithm>
using namespace std;
int n;
double m;
double a[1100];
int main()
{
while(~scanf("%d%lf",&n,&m))
{
for(int i=0; i<n; i++)
scanf("%lf",&a[i]);
sort(a,a+n);
double k=m;
int cnt=0;
for(int i=0; i<n; i++)
{
if(a[i]/2.0<=k)
{
k=max(k,a[i]);
continue;
}
else
{
while(1)
{
k*=2;
cnt++;
if(a[i]/2.0<=k)
break;
}
}
k=max(k,a[i]);
}
printf("%d\n",cnt);
}
return 0;
}
Educational Codeforces Round 25的更多相关文章
- Educational Codeforces Round 25 E. Minimal Labels&&hdu1258
这两道题都需要用到拓扑排序,所以先介绍一下什么叫做拓扑排序. 这里说一下我是怎么理解的,拓扑排序实在DAG中进行的,根据图中的有向边的方向决定大小关系,具体可以下面的题目中理解其含义 Educatio ...
- Educational Codeforces Round 25 Five-In-a-Row(DFS)
题目网址:http://codeforces.com/contest/825/problem/B 题目: Alice and Bob play 5-in-a-row game. They have ...
- Educational Codeforces Round 25 A,B,C,D
A:链接:http://codeforces.com/contest/825/problem/A 解题思路: 一开始以为是个进制转换后面发现是我想多了,就是统计有多少个1然后碰到0输出就行,没看清题意 ...
- Educational Codeforces Round 25 C. Multi-judge Solving
题目链接:http://codeforces.com/contest/825/problem/C C. Multi-judge Solving time limit per test 1 second ...
- Educational Codeforces Round 25 B. Five-In-a-Row
题目链接:http://codeforces.com/contest/825/problem/B B. Five-In-a-Row time limit per test 1 second memor ...
- Educational Codeforces Round 25 E. Minimal Labels 拓扑排序+逆向建图
E. Minimal Labels time limit per test 1 second memory limit per test 256 megabytes input standard in ...
- Educational Codeforces Round 25 D - Suitable Replacement(贪心)
题目大意:给你字符串s,和t,字符串s中的'?'可以用字符串t中的字符代替,要求使得最后得到的字符串s(可以将s中的字符位置两两交换,任意位置任意次数)中含有的子串t最多. 解题思路: 因为知道s中的 ...
- [Educational Codeforces Round 16]E. Generate a String
[Educational Codeforces Round 16]E. Generate a String 试题描述 zscoder wants to generate an input file f ...
- Educational Codeforces Round 60 (Rated for Div. 2) 题解
Educational Codeforces Round 60 (Rated for Div. 2) 题目链接:https://codeforces.com/contest/1117 A. Best ...
随机推荐
- HTTP 错误码
HTTP 400 – 请求无效 HTTP 401.1 – 未授权:登录失败 HTTP 401.2 – 未授权:服务器配置问题导致登录失败 HTTP 401.3 – ACL 禁止访问资源 HTTP 40 ...
- centos7下Etcd3集群搭建
一.环境介绍 etcd主要功能是分布式的存储键值,优点不多说了,分布是集群,自动选举等等,自行百度,主要说下配置方法,折腾了几天,终于优点眉目了,记录下操作方法,本文参考了如下链接 https://w ...
- 微软必应Bing搜索引擎这几天无法访问!
一.用必应(Bing)临时域名: www2.bing.com 或者 www4.bing.com 临时域名博主验证有效 二.修改hosts文件: 用户只需要暂时修改下host然后坐等微软服务器恢复后再删 ...
- web配置详细解释
<?xml version="1.0"?> <!--注意: 除了手动编辑此文件以外,您还可以使用 Web 管理工具来配置应用程序的设置.可以使用 Visual S ...
- .net framework , code first
1. 创建一个控制台应用程序, 并添加引用 2 创建 一个类 public class New { [Key] public string NewId { get; set; } public str ...
- vue 打包后本地先自己启动服务 anywhere 非常好用
:)nodejs服务器Anywhere Anywhere是一个随启随用的静态服务器,它可以随时随地将你的当前目录变成一个静态文件服务器的根目录. 一,安装node 在nodejs官网下载,安装后打开c ...
- MySQL实现阶段累加的sql写法 ,eq:统计余额
最近项目碰到一个新的需求,统计每日充值/消费之后的余额.对于这种需求,其实也很简单,只需要在每次充值/消费后,计算下余额,然后保存下来就可以了.但是对于这种需求,一条sql就能搞定,都不需要做冗余字段 ...
- hbase-bloom filter
bloom fliter的作用主要用于提升hbase的读性能,但是会牺牲一定的存储空间. 原理: bloom fliter是一种空间效率很高的随机数据结构,初始状态时,bloom filter是一个包 ...
- Linux permission denied问题
初试Linux 本来想试一试递归的mkdir -p结果遇到了permission denied,但是自己明明是管理员啊 查了博客,在文件名前加上chmod 777 ,例如chmod 777 temp ...
- SHELL脚本学习-自动生成AWR报告
自动生成AWR报告,每个小时生成一次. #编辑脚本:vim awr_auto.sh #oracle用户下执行 #!/bin/bash # 每个小时执行一次,自动生成AWR报告 source ~/.ba ...