博客
关于我
19年 湘潭邀请赛
阅读量:303 次
发布时间:2019-03-03

本文共 1232 字,大约阅读时间需要 4 分钟。

找规律 模拟
n叉树

#include
#include
#include
#include
using namespace std;const int maxn=2e5+10;typedef long long ll;ll d[maxn],a[maxn];int main(){ int k,m,n,N; ll p; while(~scanf("%d%d%d%lld",&k,&m,&n,&p)){ for(int i=1;i<=k;i++) scanf("%lld",&a[i]), d[i]=0; sort(a + 1, a + 1 + k); ll ans = 0; if(n == 1) N = m; else N = (pow(n, m) - 1) / (n - 1);// 节点总数 for(int i = 1; i < N; i++) // 根节点不需要 { d[i]=(d[i%n == 0 ? i/n-1 : i/n] % p + a[i] % p) % p; // d[i]=(d[(i-1)/n]%p+a[i]%p)%p; ans = (ans + d[i]) % p; } printf("%lld\n", ans); } return 0;}

字符串 + 思维
题意是在所给串中找到 xtCpc,可以不连续,但是每个字母只能用一次。

#include
#include
#include
#include
#include
using namespace std;typedef unsigned long long ull;const int N = 2e5 + 9;string s;int sum;int n;int a[10];int main(){ while(cin >> n >> s) { memset(a,0,sizeof(a)); for(int i = 0; i < n; ++i) { if(s[i] == 'x') ++a[1]; else if(s[i] == 't' && a[1]) ++a[2], --a[1]; else if(s[i] == 'C' && a[2]) ++a[3], --a[2]; else if(s[i] == 'p' && a[3]) ++a[4], --a[3]; else if(s[i] == 'c' && a[4]) ++a[5], -- a[4]; } cout << a[5] << endl; } return 0;}

转载地址:http://hwfm.baihongyu.com/

你可能感兴趣的文章
MySql 手动执行主从备份
查看>>
Mysql 批量修改四种方式效率对比(一)
查看>>
Mysql 报错 Field 'id' doesn't have a default value
查看>>
MySQL 报错:Duplicate entry 'xxx' for key 'UNIQ_XXXX'
查看>>
Mysql 拼接多个字段作为查询条件查询方法
查看>>
mysql 排序id_mysql如何按特定id排序
查看>>
Mysql 提示:Communication link failure
查看>>
mysql 插入是否成功_PDO mysql:如何知道插入是否成功
查看>>
Mysql 数据库InnoDB存储引擎中主要组件的刷新清理条件:脏页、RedoLog重做日志、Insert Buffer或ChangeBuffer、Undo Log
查看>>
mysql 数据库中 count(*),count(1),count(列名)区别和效率问题
查看>>
mysql 数据库备份及ibdata1的瘦身
查看>>
MySQL 数据库备份种类以及常用备份工具汇总
查看>>
mysql 数据库存储引擎怎么选择?快来看看性能测试吧
查看>>
MySQL 数据库操作指南:学习如何使用 Python 进行增删改查操作
查看>>
MySQL 数据库的高可用性分析
查看>>
MySQL 数据库设计总结
查看>>
Mysql 数据库重置ID排序
查看>>
Mysql 数据类型一日期
查看>>
MySQL 数据类型和属性
查看>>
mysql 敲错命令 想取消怎么办?
查看>>