正题

题目链接:https://www.luogu.com.cn/problem/AT5661


题目大意

一个包含A,B,CA,B,CA,B,C的序列,每次可以选择相邻的两个除了ABABAB和BABABA的删去。

求有多少个长度为NNN的序列可以删完。

1≤N≤1071\leq N\leq 10^71≤N≤107


解题思路

因为每次是删除一个奇数位置和一个偶数位置,如果我们把所有偶数位置的取反,那么就变成了不能删除AAAAAA和BBBBBB。

然后如果在边上AAA一定可以删(除非到边界),也就是AAA的数量不能超过n2\frac{n}{2}2n​,同理BBB也是。

然后减去AAA大于的或者BBB大于的就好了(因为只能有一个大于)

时间复杂度O(n)O(n)O(n)


code

#include<cstdio>
#include<cstring>
#include<algorithm>
#define ll long long
using namespace std;
const ll N=1e7+10,P=998244353;
ll n,pw[N],inv[N],fac[N],ans;
ll C(ll n,ll m)
{return fac[n]*inv[m]%P*inv[n-m]%P;}
signed main()
{scanf("%lld",&n);pw[0]=ans=inv[1]=1;for(ll i=2;i<=n;i++)inv[i]=P-(P/i)*inv[P%i]%P;inv[0]=fac[0]=1;for(ll i=1;i<=n;i++)fac[i]=fac[i-1]*i%P,inv[i]=inv[i-1]*inv[i]%P;for(ll i=1;i<=n;i++)ans=ans*3%P,pw[i]=pw[i-1]*2%P;for(ll i=n/2+1;i<=n;i++)ans=(ans-pw[n-i]*C(n,i)%P*2%P+P)%P;printf("%lld\n",ans);return 0;
}

AT5661-[AGC040C]Neither AB nor BA【模型转换】相关推荐

  1. yolov5模型转换rknn

    yolov5模型转换rknn 安装virtualenv,用来来管理python环境 导出包到另一个系统 图片标注 安装yolo onnx模型转换为rknn RK3588安装RKNN-toolkit 安 ...

  2. 轻松入门模型转换和可视化

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 本文给大家介绍一个模型转换格式ONNX和可视化工具Netron.ONNX是微软设计的一种多平台的通用文 ...

  3. 模型转换状态已支持Webhook!

    各位朋友知道,使用Forge转换服务得到Forge Viewer格式,在提交转换请求后,需要再有一个过程,调用另外一个服务,定期询问是否转换完毕.这种方式对于应用程序本身并不是很有效率,而且为避免任务 ...

  4. pytorch模型转换

    目录 数据类型转换 模型转换 1. 环境配置 2. 模型加载 模型导出onnx:

  5. hsi转rgb公式matlab,rgb与hsi模型转换matlab程序

    rgb与hsi模型转换matlab程序 数字图像处理:RGB与HSI模型转换Matlab程序 im1=imread( Fig6.30(01).jpg ); im3=im1; im1=im2double ...

  6. 【控制】多智能体系统总结。1. 系统模型。2.控制目标。3.模型转换。

    [控制]多智能体系统总结.1. 系统模型.2.控制目标.3.模型转换. [控制]多智能体系统总结.4.控制协议. [控制]多智能体系统总结.5.系统合并. 文章目录 1. 系统模型 1.1 一阶一维系 ...

  7. 20211222 AB和BA具有相同的非零特征值;如果A和B均方,且AB=I,那么BA=I,A、B均可逆

    AB和BA具有相同的非零特征值: 如果A和B均方,且AB=I,那么BA=I,A.B均可逆. https://blog.csdn.net/Europe233/article/details/867270 ...

  8. JavaScript玩转机器学习:模型转换

    JavaScript玩转机器学习:模型转换 模型转换 TensorFlow.js 配备了各种预训练模型,这些模型可以在浏览器中使用,模型仓库 中有相关介绍.但是,您可能已经在其他地方找到或创建了一个 ...

  9. 一文带你熟悉Pytorch->Caffe->om模型转换流程

    摘要:本文旨在分享Pytorch->Caffe->om模型转换流程. 标准网络 Baseline:PytorchToCaffe 主要功能代码在: PytorchToCaffe +-- Ca ...

  10. linux caffe生成的模型,深度学习之pytorch转caffe转ncnn模型转换(三)

    搭建caffe平台: 先在Linux系统下搭建caffe环境,安装依赖包: sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy- ...

最新文章

  1. html+css 百度首页练习
  2. html5中单选按钮的互斥应该,HTML5+CSS3前端入门教程---从0开始通过一个商城实例手把手教你学习PC端和移动端页面开发第6章表格与表单...
  3. oracle 11g 创建 job 20
  4. html模板安装到织梦,织梦网站安装教程 织梦模板通用安装图文教程
  5. 50%企业数据治理失败!这9大要素才是成功关键
  6. 因为一次宕机,终于搞透了 Kafka 高可用原理!
  7. sap commit rollback
  8. Leetcode每日一题:16.3sum-closest(最接近的三数之和)
  9. Bing 和 Cortana 源码遭泄露,网友嘲讽:其实没人想要
  10. 剑指offer——面试题9:求斐波那切数列的四种方法
  11. CISSP考试心得分享
  12. ISM模型由自相关矩阵SSIM计算获得可达矩阵
  13. [源码和文档分享]基于Android的家庭学校联系平台APP开发与实现
  14. 犀牛插件学习——T-Splines
  15. 20179214 2017-2018-2 《密码与安全新技术》第一周作业
  16. JS实现类似打字的特效,JS实现打字效果
  17. 2020年最全各省市矢量数据下载(含城市道路、铁路、高速、省道、县道、乡道等+河流水系网+建筑轮廓+铁路网等shp矢量数据+矢量量边界+wgs84坐标
  18. 你的手指上有几个螺(斗)?指纹决定你的性格
  19. 我国古代的度量衡和音律的关系
  20. 物流快递电子面单Api接口怎么申请对接(顺丰、快递鸟、菜鸟、拼多多)

热门文章

  1. python求导函数的值_python怎么实现函数求导
  2. delphi 关闭时缩小到托盘_delphi 实现最小化系统托盘
  3. thymeleaf加载不了js引用_网站首页加载慢解决方案
  4. 微信 小程序 python 渲染_微信小程序渲染html内容
  5. linux目录结果说明,Linux目录结构及文件说明
  6. ajax mode,DWR的三种Reverse Ajax Mode配置详解
  7. ajax 返回flase,Django request.is_ajax返回false
  8. .net 读蓝牙数据_Linux内核曝严重蓝牙漏洞,影响多个版本
  9. 7-8 最优服务次序问题 (10 分)
  10. 7-35 城市间紧急救援 (25 分)(思路加详解)