bzoj1704 / P2882 [USACO07MAR]面对正确的方式Face The Right Way
2024-10-20 11:37:44
P2882 [USACO07MAR]面对正确的方式Face The Right Way
$n<=5000$?枚举翻转长度,顺序模拟就ok了
对于每次翻转,我们可以利用差分的思想,再搞搞前缀和。
(输出反了还交,真菜)
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
#define N 10010
int n,a[N],s[N],p[N],ans,mnd=1e9;
int main(){
scanf("%d",&n); char q[];
for(int i=;i<=n;++i)
scanf("%s",q),a[i]=(q[]=='B');
for(int i=n,tot,ed;i>=;--i){
memset(p,,sizeof(p));tot=,ed=;
for(int j=;j<=n-i+;++j){
s[j]=s[j-]+p[j];
if((a[j]+s[j])&)//该位需要翻转
++s[j],--p[j+i],++tot;
}
for(int j=n-i+;j<=n&&!ed;++j){
s[j]=s[j-]+p[j];
if((a[j]+s[j])&) ed=;//判断剩下的是否有转到前面去
}
if(!ed&&tot<=mnd) mnd=tot,ans=i;//更新答案
}printf("%d %d",ans,mnd);
return ;
}
最新文章
- setprecision **fixed
- JavaScript基础——处理字符串
- hdu 4576 概率dp **
- 兼容性所有浏览器的透明CSS设置
- RBAC(Role-Based Access Control,基于角色的访问控制)
- MSSQL 当前会话设置隔离级别与查询
- Javasript 正则匹配任意字符
- V4l2的结构体 --- ioctl【转】
- Django查询笔记1
- 如何设置Mac电脑的DNS
- ecmall 支付成功 订单状态没有改变解决办法
- tp5中代替tp3.2中的一些方法
- Spring Boot(七):Mybatis 多数据源最简解决方案
- windos8设置cpu数量和内存大小
- x-pack 功能介绍及配置传输层安全性(TLS / SSL)
- [scrapy] scrapy 使用goose作为正文提取
- a标签点击事件
- 下载Ubuntu镜像
- poj2104 主席树模板题
- SpringCloud系列十:使用Feign实现声明式REST调用