当前位置: 首页 > news >正文

CodeForces每日好题10.14

   给你一个字符串 让你删除一些字符让它变成一个相邻的字母不相同的字符串,问你最小的删除次数 以及你可以完成的所有方/案数

求方案数往DP 或者 组合数学推公式上面去想,发现一个有意思的事情

例如1001011110

这个字符串你划分成1  00   1 0 1111 0

每个部分最多剩余一个

最小操作数就是n-划分个数

方案数的话自己玩一下 简单的组合数学推公式

  

// Problem: C. Make it Alternating
// Contest: Codeforces - Educational Codeforces Round 155 (Rated for Div. 2)
// URL: https://codeforces.com/problemset/problem/1879/C
// Memory Limit: 256 MB
// Time Limit: 2000 ms
// 
// Powered by CP Editor (https://cpeditor.org)#include<bits/stdc++.h>
using namespace std;
using ll=long long;
const int N = 2e5+10,mod = 998244353;
ll ans=1;
void solve()
{string str;cin>>str;vector<int>arr;string tem="";tem+=str[0];for(int i=1;i<str.size();i++){if(str[i]!=str[i-1]){arr.push_back(tem.size());tem="";}tem+=str[i];}if(tem!="")arr.push_back(tem.size());cout<<str.size()-arr.size()<<" ";ans = 1;for(auto t:arr) ans = ans*t%mod;int t = str.size()-arr.size();for(int i=1;i<=t;i++) ans = ans * i %mod;cout<<ans<<"\n";}int main()
{ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);int _;cin>>_;while(_--)solve();return 0;
}

http://www.lryc.cn/news/192388.html

相关文章:

  • Python Django 之连接 Mysql 数据库详解
  • Java设计模式:Callback
  • 年底旺季,Shopee、Lazada如何通过测评补单技术打造产品权重收割流量
  • CentOS 7 安装 MySQL8.0
  • C# 往多线程传递安全参数的方法
  • Java之SPI
  • 【数据结构】算法的空间复杂度
  • 恢复Windows 11经典右键菜单:一条命令解决显示更多选项问题
  • Android:事件分发机制(二)
  • vue2时间处理插件——dayjs
  • 软考 系统架构设计师系列知识点之软件质量属性(6)
  • Python6-wxPython库
  • 使用OpenSSL的反弹shell
  • 竞赛选题 深度学习OCR中文识别 - opencv python
  • ezEIP信息泄露
  • 02.机器学习原理(复习)
  • 电源集成INN3270C-H215-TL、INN3278C-H114-TL、INN3278C-H215-TL简化了反激式电源转换器的设计和制造。
  • UE4和C++ 开发--HUD类
  • 使用js怎么设置视频背景
  • Gin,Gorm实现Web计算器
  • 11-网络篇-DNS步骤
  • 设计师都应该知道的事:极简主义家具该怎么去用
  • 设计模式02———建造者模式 c#
  • 2023最新接口自动化测试面试题
  • GaN器件的工作原理
  • 点云从入门到精通技术详解100篇-海量三维点云的空间索引及可视化应用(续)
  • androidx和v4包资源冲突解决方法
  • 【发烧期间随笔】第一次游戏开发经历的总结与反思
  • CCombBox组合框
  • 机器学习-有监督学习-神经网络