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

补题篇--codeforces

传送门:Problem - 1881C - Codeforces

题目大意:

思路:

首先解决这个问题要知道 一个 ( x , y ) 顺时钟旋转 90 , 180 , 270可以得到 ( y , n - x + 1 ) ,

( n - x + 1 , n - y + 1 ) ,( n - y + 1 , x )

由于一个字符只能增大,所以可以找到旋转位置的最大字符,每个字符都要变成最大字符,因此求出答案

AC代码:

#include<bits/stdc++.h>
using namespace std;
#define int long long
void solve()
{int n; cin >> n;vector<vector<char>> arr(n + 1, vector<char>(n + 1));for (int i = 1; i <= n; i++){for (int j = 1; j <= n; j++) cin >> arr[i][j];}int ans = 0;for (int i = 1; i <= n; i++){for (int j = 1; j <= n; j++){int temp1 = max({ arr[i][j] , arr[j][n - i + 1] , arr[ n - j + 1 ][i] , arr[n - i + 1][n - j + 1] }) - 'a';int temp2 = arr[i][j] + arr[j][n - i + 1] + arr[n - j + 1][i] + arr[n - i + 1][n - j + 1] - 4 * 'a';ans += 4 * temp1 - temp2;}}cout << ans / 4 << endl;
}
signed main()
{int tt; cin >> tt;while (tt--)solve();return 0;
}

传送门:Problem - 1879C - Codeforces

题目大意:

思路:

如何计算最小操作次数: 相同的区间段只能保留一个数字     00011101001111  -> 3 3 1 1 2 4

需要删除的数字个数 sum = ( len1 - 1 ) + ( len2 - 1 ) + ( len3 - 1 ) ......

如何计算最短操作序列的个数:C( len - 1 , len )  == len,一个区间段需要删除的数字序列是 len,

而这些数 ( sum )做全排列,sum的阶乘 答案就是 len * sum!

0110110001 -> 1  2  1  2  3  1 ->第一个序列不用删除,第二个序列 11 可以删除 2 个(第二个或第三个1) ,第三个序列不用删除,第四个序列删除 3 个 ,第五个序列不用删除,删除的这些数还有做全排列

AC代码:

#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N = 2e5 + 10;
const int mod = 998244353;
int f[N];
void solve()
{string s; cin >> s;int n = s.size();s = " " + s;int ans = 1;int sum = 0;int len = 1;for( int i = 2; i <= n; i++){if( s[i] != s[i-1] ) {ans = ans * len % mod ; sum += ( len - 1 ); len = 1;}else len++;}ans = ans * len % mod;sum += ( len - 1 );cout << sum << " " << ans * f[sum] % mod << endl;
}
signed main()
{f[0] = 1;for( int i = 1; i <= 2e5 ; i++ ) f[i] = f[i-1] * i % mod;// 预处理阶乘int tt; cin >> tt;while(tt--)solve();return 0;
}

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

相关文章:

  • 【字幕】恋上数据结构与算法之015动态数组03简单接口的实现
  • 基于2023年网络赛赛题了解OpenCv
  • 你到底更适合买虚拟主机还是服务器?
  • linux手册翻译 addr2line
  • python-素数中的等差数列
  • Unity3D 服务器AStar寻路客户端位置同步显示验证详解
  • 无人机之悬停精度篇
  • 力扣题解2848
  • 电子电气架构---智能汽车应该是怎么样的架构?
  • 无心剑七绝《中秋相思》
  • Python画笔案例-051 绘制赵爽弦图
  • SEGGERS实时系统embOS推出Linux端模拟器
  • HTML + CSS - 网页布局之一般布局浮动布局
  • python定时任务,定时爬取水质和天气
  • ARM驱动学习之基础小知识
  • 【字幕】恋上数据结构与算法之019动态数组07打印数组
  • Python基础语法(3)下
  • 数据稀缺条件下的时间序列微分:符号回归(Symbolic Regression)方法介绍与Python示例
  • XML_Tomcat_HTTP
  • GPT Prompt
  • go基础知识归纳总结
  • 【字幕】恋上数据结构与算法之014动态数组02接口设计
  • ffmpeg硬件解码一般流程
  • 微信支付开发-程序开发
  • 【数据结构】排序算法系列——堆排序(附源码+图解)
  • Linux——应用层自定义协议与序列化
  • CGAL 从DSM到DTM-建筑物区域提取
  • Python--编码解码报错
  • 大屏可视化常用图标效果表达
  • 高通Liunx 系统镜像编译