首页 > 其他分享 >做题纪要

做题纪要

时间:2023-10-13 19:13:24浏览次数:27  
标签:int long bigoplus 清空 操作 纪要

Alice and Recoloring 1

有一个很牛逼的转化,考虑一个点 \(i,j\) 是否被以此为端点进行区间覆盖,只需考虑 \((i+1,j)\),\((i,j+1)\),\((i+1,j+1)\) 是为 \(B\) 的个数,如果个数为偶数,则此点不许操作,否则则需操作。设原序列 \(a_{i,j}=[s_{i,j}='B']\) , \(c_{i,j}=a_{i+1,j} \bigoplus a_{i,j+1} \bigoplus a_{i+1,j+1} \bigoplus a_{i,j}\),所以将 \(a\) 清空其实就是将 \(c\) 清空,而且还有一个比较好的地方就是进行操作一其实就是修改一个点,而进行操作四就是修改四个点形如:\((x+1,y+1)\) \(\rightarrow\) \((x,y)\),\((x,m)\),\((n,y)\),\((n,m)\),再考虑,操作 \(2,3\)就是在搞笑,完全可以被两次操作一代替,还有两次操作四可以被六次操作一代替,所以操作四最多进行一次,然后直接枚举那一次选在哪里就可以。

点击查看代码
#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=505;
char s[N];
int c[N][N];
int a[N][N];
int sum[N][N];
signed main(){
    int n,m;
    scanf("%lld%lld",&n,&m);
    for(int i=1;i<=n;i++){
        scanf("%s",s+1);
        for(int j=1;j<=m;j++){
            if(s[j]=='B') c[i][j]=1;
            else c[i][j]=0;
        }
    }
    for(int i=1;i<=n;i++)
        for(int j=1;j<=m;j++)
            a[i][j]=(c[i][j]^c[i+1][j]^c[i][j+1]^c[i+1][j+1]);
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            sum[i][j]=sum[i-1][j]+sum[i][j-1]-sum[i-1][j-1];
            sum[i][j]+=a[i][j]; 
        }
    }
    int ans=sum[n][m];
    for(int i=1;i<=n;i++){
        for(int j=1;j<=m;j++){
            int w;
            w=a[n][m]+a[i-1][j-1]+a[n][j-1]+a[i-1][m];
            ans=min(ans,3+sum[n][m]-w+4-w);
        }
    }
    printf("%lld",ans);
}

标签:int,long,bigoplus,清空,操作,纪要
From: https://www.cnblogs.com/jinjiaqioi/p/17762864.html

相关文章

  • 2023.9 做题纪要 #2
    目录2023.9.14P3920[WC2014]紫荆花之恋CF1408HRainbowTriples2023.9.15CF1534GANewBeginningCF1696GFishingprincePlaysWithArrayAgain2023.9.14哇哦,居然出现了第二篇博客。前两天whk,顺便感了个冒,所以whk也没咋看。今天还没完全恢复,浅更一下吧。先把AGC优先......
  • 0709会议纪要
    组织情况名称:RMPA软件研发团队组会会期:2023.7.98:00-22:00地点与形式:科技园209线下会议、钉钉线上会议参加人:宋旗、苏德琪、朱子泉、庞鑫燕、刘桂凯、王凯旋、闫圣召、汪燕妮、刘明杲、赵正阳等主持人:苏德琪现将会议讨论的主要流程综述如下:1.总括引入确定“各端小组交流......
  • 6.26会议纪要
    6.27会议纪要一、工作分配前端马冉冉:画用例图,确定用户,用户层级陈振辉:统计设备类型,数量后端郝子明、刘林涛:功能细化,统计系统的子系统、具体功能杨枭:流程梳理,统计系统涉及的流程薛贺程:技术选型,统计对比项目的设计模式、接口类型等二、文档书写注意事项文档先总写是做什......
  • 锻炼纪要
    2023-06-16游泳一个小时,大概是15*2*50m有人懂为什么游完泳之后会胀肚吗?微信步数35822023-06-17篮球一小时,今天居然上篮进了几个,非常震撼。过人已经过过了,去年年终总结里面写的目标达成一个!......
  • 4.12会议纪要
    确立了今天的目标:对界面的雏形进行完善,对于具体Activity的功能进行操作对于信息录入进行操作 ......
  • 人脸识别团队项目计划(会议纪要)
    我们这次战略会议主要探讨了我们这个项目主要分为几个步骤。项目三大功能项:1.     老师的功能2.学生的功能3.管理员的功能接下来是我们团队详细的功能介绍: 〇、总1.输入都进行判空,不允许提交空数据2.增加不允许重复(学号,工号,教学班)一、教师1.登录(工号,密码)  ......
  • “强鹰”会议纪要发布,不会停止加息?风险资产恐将承压!
       美联储发布了去年12月的会议纪要,详细揭露了货币政策制定者对经济和加息路径的最新研判,继续展现偏鹰的论调和立场。   纪要显示,美联储官员致力于抗击通货膨胀......
  • cpp-properties调试纪要
    报两个错误std::result_of错误,C++20不支持,提前定义_HAS_DEPRECATED_RESULT_OF实际用的是Qt5,不支持Q_DISABLE_COPY_MOVE,改为Q_DISABLE_COPY//file:QtCore/qobjectdef......
  • 简单纪要:influxdb浅谈!
     一、初识Influxdb......
  • 简单纪要:docker入门(一),docker安装!
    一docker是什么、为什么出现了docker?Docker是基于GO开发的云开源项目,是一个用于开发,交付和运行应用程序的开放平台。Docker能使应用程序与基础架构分离,从而实现快速交付......