博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Codeforces 496D - Tennis Game
阅读量:5824 次
发布时间:2019-06-18

本文共 1292 字,大约阅读时间需要 4 分钟。

思路:枚举每个t,求出对应的满足条件的s。

代码:

#include
using namespace std;#define ll long long#define pb push_back#define mem(a,b) memset((a),(b),sizeof(a))#define pii pair
#define mp make_pairconst int N=1e5+5;int a[N];int c1[N]={
0};int c2[N]={
0};pii ans[N];int main(){ ios::sync_with_stdio(false); cin.tie(0); int n; cin>>n; for(int i=1;i<=n;i++) { cin>>a[i]; c1[i]=c1[i-1]; c2[i]=c2[i-1]; if(a[i]==1)c1[i]++; else c2[i]++; } int s1,s2,last1,last2,c=0; for(int t=1;t<=n;t++) { s1=s2=last1=last2=0; while(true) { int t1=lower_bound(c1+1,c1+n+1,last1+t)-c1; int t2=lower_bound(c2+1,c2+n+1,last2+t)-c2; if(t1>n&&t2>n)break; int mn=min(t1,t2); if(mn==t1)s1++; else s2++; if(mn==n) { if(s2>s1&&a[n]==2||s1>s2&&a[n]==1) { ans[c].first=max(s1,s2); ans[c++].second=t; } break; } last1=c1[mn];//上一局的最后得分 last2=c2[mn];//上一局的最后得分 } } cout<
<

 

转载于:https://www.cnblogs.com/widsom/p/7372097.html

你可能感兴趣的文章
java 连接数据库之一个完整的函数
查看>>
centos5.6下virtualbox安装手记
查看>>
负载均衡器上实现客户端IP限制
查看>>
用MDT 2012为企业部署windows 7(一)--MDT以往经验以及MDT 2012介绍
查看>>
linux 死机了怎么办
查看>>
《perl实例精解》学习笔记第二天【变量、数组、哈希】(上)
查看>>
mysql脚本
查看>>
非常快的Ubuntu源。
查看>>
《电脑爱好者》专用系统恢复光盘 v1.2 Beta1
查看>>
sed高级用法
查看>>
新手学习wsus3.0 的部署
查看>>
OllyDBG 入门系列教学--让你瞬间成为破解高手
查看>>
jQuery插件开发的准备
查看>>
Dubbo点滴(2)之集群容错
查看>>
Zend Framework 自动加载类的实现方法
查看>>
使用Logrotate来管理系统日志
查看>>
机房管理系列之机房温湿度
查看>>
清蒸武昌鱼和鸡蛋羹
查看>>
[转]Android笔记: android APP 内存与速度的优化问题
查看>>
S3C2440的camera接口特性及WinCE 下的驱动
查看>>