2024CCPC网络赛

vp链接:Dashboard - The 2024 CCPC Online Contest - Codeforces

B. 军训 II

序列 a 从小到大排列或者从大到小排列时,不整齐度是最小的。方案数是所有相同数字的个数的排列数的乘积。如果首尾的数字不同的话,还要再乘个 2。

#include <bits/stdc++.h>
using namespace std;#define int long longconst int N = 1e3 + 10, mod = 998244353;
int n, a[N], fac[N];inline int read() {int x = 0, f = 1; char c = getchar();while (c < '0' || c > '9') { if (c == '-') f = -1; c = getchar(); }while (c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar();return x * f;
}signed main() {n = read();fac[1] = 1;for (int i = 2; i <= n; i++) fac[i] = fac[i - 1] * i % mod;for (int i = 1; i <= n; i++) a[i] = read();sort(a + 1, a + n + 1);int num = 1, ans = 0, res = 1;for (int i = 1; i <= n; i++) {if (a[i] == a[i - 1]) res++;else {num = num * fac[res] % mod;res = 1;}}num = num * fac[res] % mod;if (a[1] != a[n]) num = num * 2 % mod;for (int i = 1; i <= n; i++) {for (int j = i; j <= n; j++) {ans += a[j] - a[i];}}printf("%lld %lld", ans, num % mod);return 0;
}

D. 器-

设 dp_{i, l, r} 表示考虑到 S'_i,字符串 T 的 l 到 r 区间的这个字符串在 S'_i 中出现的个数。根据 S'_i 的还原方式,可以得到状态转移方程为

 dp_i, l, r = \sum_{k = l - 1}^{r} dp_{i - 1, l, k} \times dp_{i - 1, k + 1, r}

其中 dp_{i - 1, l, k} 可以看作从 S'_i 中左边的 S'_{i- 1 } 得来的, 可以看作从 S'_i 中右边的 S'_{i - 1} 得来的。

#include <bits/stdc++.h>
using namespace std;#define int long longconst int mod = 998244353;
int dp[105][105][105];
string s, t;signed main() {ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);cin >> s >> t;s = " " + s, t = " " + t;int n = s.size(), m = t.size();for (int i = 0; i <= n; i++)for (int j = 1; j <= m + 1; j++)for (int k = 0; k < j; k++) dp[i][j][k] = 1;for (int i = 1; i <= n; i++) {for (int l = 1; l <= m; l++) {for (int r = l; r <= m; r++) {for (int k = l - 1; k <= r; k++)dp[i][l][r] = (dp[i][l][r] + dp[i - 1][l][k] * dp[i - 1][k + 1][r]) % mod;for (int k = l - 1; k + 1 <= r; k++)if (s[i] == t[k + 1])dp[i][l][r] = (dp[i][l][r] + dp[i - 1][l][k] * dp[i - 1][k + 2][r]) % mod;}}}cout << dp[n][1][m];return 0;
}

E. 随机过程

对于最大节点数,考虑第 i 层的节点数,最多有 min(n, 26^i) 个节点。

对于期望节点数,考虑计算第 i 层的节点数,每个节点不出现的概率是 (1 - \frac{1}{26^i})^n,所以出现的概率是 1 - (1 - \frac{1}{26^i})^n,那么第 i 层的期望节点数就是 [1 - (1 - \frac{1}{26^i})^n] \cdot 26^i

#include <bits/stdc++.h>
using namespace std;#define int long longconst int mod = 998244353, N = 1e5 + 10;
int fac26[N];int qpow(int x, int k) {int res = 1LL;while (k) {if (k & 1) res = res * x % mod;x = x * x % mod;k >>= 1;}return res % mod;
}signed main() {ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);int n, m;cin >> n >> m;fac26[0] = 1;for (int i = 1; i < N; i++) fac26[i] = fac26[i - 1] * 26 % mod;int maxnum = 1, tmp = 1, ans = 1, inv26 = qpow(26, mod - 2);for (int i = 1; i <= m; i++) {tmp *= 26;if (tmp < n) maxnum = (maxnum + tmp) % mod;else {maxnum = (maxnum + (m - i + 1) * n % mod) % mod;break;}}for (int i = 1; i <= m; i++)ans += ((1 - qpow((1 - qpow(inv26, i) + mod) % mod, n) + mod) % mod) * fac26[i] % mod;cout << maxnum % mod << ' ' << ans % mod << endl;return 0;
}

K. 取沙子游戏

  1. n 为奇数时,Alice 最开始取 1,后面都只能取 1,Alice 赢。
  2. n 小于等于 k 时,Alice 可以一次性取完,Alice 赢。
  3. n 为偶数时
  • k = 1,每人每次都只能取 1,Bob 赢。
  • 由 1 可得,每个人期望留给对方的都是偶数,那么每个人取的都是偶数。
#include <bits/stdc++.h>
using namespace std;void solve() {int n, k;cin >> n >> k;if (n & 1 || n <= k) puts("Alice");else if (k == 1) puts("Bob");else {for (int i = 2; i <= k; i *= 2) {int tim = n / i;if (tim & 1) {puts("Alice");return;}}puts("Bob");}
}int main() {ios::sync_with_stdio(false); cin.tie(0);int t;cin >> t;while (t--) {solve();}return 0;
}

L. 网络预选赛

签到提,遍历一遍即可。

#include <bits/stdc++.h>
using namespace std;int main() {ios::sync_with_stdio(false); cin.tie(0); cout.tie(0);int n, m;cin >> n >> m;string s[n + 2];for (int i = 1; i <= n; i++) { cin >> s[i]; s[i] = " " + s[i]; }int ans = 0;for (int i = 1; i < n; i++) {for (int j = 1; j < m; j++) {if (s[i][j] == 'c' && s[i][j + 1] == 'c' && s[i + 1][j] == 'p' && s[i + 1][j + 1] == 'c') ans++;}}cout << ans;return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/143421.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【在Linux世界中追寻伟大的One Piece】进程间关系与守护进程

目录 1 -> 进程组 1.1 -> 什么是进程组 1.2 -> 组长进程 2 -> 会话 2.1 -> 什么是会话 2.2 -> 如何创建会话 2.3 -> 会话ID(SID) 3 -> 控制终端 4 -> 作业控制 4.1 -> 什么是作业(job)和作业控制(Job Control) 4.2 -> 作业号 4.3…

【他山之石】优化 JavaScript 的乐趣与价值(下)

前言 继本文的 上篇 发表之后&#xff0c;没想到反响还挺好&#xff0c;看来大家在 JS 优化的问题上越来越注重“与国际接轨”了。一起来看本文的下篇&#xff0c;也是干货满满。 文章目录 6. Avoid large objectsWhat the eff should I do about this? 7. Use eval8. Use str…

Linux用户账号管理

目录 一、useradd 创建新用户 二、usermod 修改用户账号 三、userdel 删除用户账号 四、passwd 设置或更改用户密码 五、who 或 w 查看当前登录用户 六、切换用户 6.1. su命令切换用户 6.2. sudo授权命令 6.2.1. sudo的特性 6.2.2. sudo的相关文件 6.3. exit退出 6…

自制数据库迁移工具-C版-04-HappySunshineV1.4-(支持Gbase8a、PG)

目录 一、环境信息 二、简述 三、架构图 四、升级点 五、支持功能 六、安装包下载地址 七、配置参数介绍 八、安装步骤 1、配置环境变量 2、生效环境变量 3、检验动态链接是否正常 4、修改配置文件MigrationConfig.txt &#xff08;1&#xff09;Gbase8a -> Gba…

Axios基本语法和前后端交互

Axios是一个js框架&#xff0c;用于发送ajax请求。 一、导入 // node中&#xff0c;使用npm安装 npm install axios // HTML中&#xff0c;使用cdn安装 <script src"https://unpkg.com/axios/dist/axios.min.js"></script> 二、基本使用 // 使用axios…

x264中的cabac编码实现

typedef struct { /* state */ int i_low; //概率状态的范围low int i_range; //当前概率状态 范围range /* bit stream */ int i_queue; //stored with an offset of -8 for faster asm 队列中可输出的bits 个数&#xff0c;-8 开始&#xff0c;是为了方便asm优化 int i_byt…

数据防泄密系统的构建与功能分析(实用物料)

一、构建1、需求分析&#xff1a;明确企业需要保护的敏感数据类型&#xff08;如商业机密、研发资料等&#xff09;及其潜在的泄露途径&#xff08;如网络传输、文件共享、打印复印等&#xff09;。 2、策略&#xff1a;根据需求分析结果&#xff0c;制定详细的数据防泄密策略…

数字逻辑电路-加法器

目录 半加器和全加器 半加器 ​全加器 集成全加器 利用全加器实现二进制的乘法功能 加法器 半加器和全加器 半加器 不考虑低位进位的加法。 本位为s&#xff0c;进位为c。 全加器 多了一个相邻低位来的进位数。 集成全加器 左上角和右下角那两个是不用的。 利用全加器…

Selenium通过ActionBuilder模拟鼠标操作直接移动到指定坐标的注意事项

在目前&#xff08;2024-09-18&#xff09;得Selenium官方手册中&#xff0c;模拟鼠标操作基本上都是通过ActionChains完成的&#xff0c;唯独有一动作&#xff0c;是通过ActionBuilder完成的。 而前者ActionChains&#xff0c;主要是通过offset&#xff0c;也就是坐标偏移量来…

RK3568笔记五十九:FastSAM部署

若该文为原创文章,转载请注明原文出处。 记录FastSAM训练到部署全过程,转换模型和yolov8一样。 一、介绍 Fast Segment Anything Model (FastSAM) 是一种基于 CNN 的新型实时解决方案,可用于 Segment Anything 任务。该任务旨在根据各种可能的用户交互提示分割图像中的任何…

AT24CXX系列eeprom的相关知识总结

常用的eeprom存储器件有很多容量类型&#xff0c;AT系列的eeprom有at24c01,at24c02…at24c1024等。我们来做一个总结。 1.常见的型号含义 at24c01&#xff1a;表示1kbit&#xff08;128BYTE*8&#xff09; at24c02&#xff1a;表示2kbit&#xff08;256BYTE*8&#xff09; . .…

pybind11 学习笔记

pybind11 学习笔记 0. 一个例子1. 官方文档1.1 Installing the Library1.1.1 Include as A Submodule1.1.2 Include with PyPI1.1.3 Include with Conda-forge 1.2 First Steps1.2.1 Separate Files1.2.2 PYBIND11_MODULE() 宏1.2.3 example.cpython-38-x86_64-linux-gnu.so 的…

二百六十四、Java——Java采集Kafka主题A的JSON数据,解析成一条条数据,然后写入Kafka主题B中

一、目的 由于Hive是单机环境&#xff0c;因此庞大的原始JSON数据在Hive中解析的话就太慢了&#xff0c;必须放在Hive之前解析成一个个字段、一条条CSV数据 二、IDEA创建SpringBoot项目 三、项目中各个文件 3.1 pom.xml <?xml version"1.0" encoding"UTF…

java: 警告: 源发行版 17 需要目标发行版 17(100% 解决)

1. 问题说明 Idea启动Springboot服务报错&#xff1a;java: 警告: 源发行版 17 需要目标发行版 17 2. 解决方案 Project Structure指定jdk版本为我们当前使用的版本&#xff1b; Java Compiler指定jdk为我们当前使用的版本&#xff1b; Invalidate Caches重启Idea。 如果还…

小商品市场配电系统安全用电解决方案

1.概述 随着市场经济的快速发展和人民生活水平的不断提高,全国各地相继建起了大批大型小商品批发市场,此类市场以其商品种类繁多、价格实惠、停车方便等特点吸引了大量的顾客,成为人们日常光顾的重要场所,地方便了广大人民群众的日常生活。 小商品市场集商品销售和短时货物储…

如何利用生成式AI创建图像和可视化效果

每个小型出版商在创建博客文章或新闻文章的过程中&#xff0c;都有一个恐慌时刻&#xff1a; “我用什么做我的特色图片&#xff1f;” 广告公司和媒体公司都有创意总监、摄影师和艺术家随时为他们创作图片。但我们其他人怎么办呢&#xff1f; 我们中的一些人会不顾更好的判…

数据中心扩展之路:创新的数据中心布线解决方案

在不断发展的数据管理领域中&#xff0c;现代技术的迅猛发展既带来了机遇&#xff0c;也带来了挑战&#xff0c;尤其是对不断扩展的数据中心而言。随着这些基础设施的快速发展和转型&#xff0c;对高效可靠的数据中心布线解决方案的需求日益增长。本文将探讨飞速&#xff08;FS…

redis常见类型设置、获取键值的基础命令

redis常见类型设置、获取键值的基础命令 获取键值的数据类型 命令&#xff1a;TYPE keyname 常见数据类型设置、获取键值的基本命令 string类型 置键值&#xff1a;set keyname valuename获取键值&#xff1a;get keyname删除&#xff1a; del keyname list类型 从左边向列表…

关于在Qlabel遮罩方面的踩坑实录

先看目标效果&#xff1a; 想要实现封面图标的遮罩效果&#xff0c;有两个思路&#xff1a; 一、在鼠标移动到这个item上面时&#xff0c;重新绘制pixmap 例如以下代码&#xff1a; #include <QApplication> #include <QWidget> #include <QPixmap> #incl…

马尔科夫蒙特卡洛_吉布斯抽样算法(Markov Chain Monte Carlo(MCMC)_Gibbs Sampling)

定义 输入:目标概率分布的密度函数 p ( x ) p(x) p(x),函数 f ( x ) f(x) f(x) 输出: p ( x ) p(x) p(x)的随机样本 x m 1 , x m 2 , ⋯ , x n x_{m1},x_{m2},\cdots,x_n xm1​,xm2​,⋯,xn​,函数样本均值 f m n f_{mn} fmn​; 参数:收敛步数 m m m,迭代步数 n n n。 (1)初…