博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
19年 湘潭邀请赛
阅读量:295 次
发布时间:2019-03-03

本文共 1238 字,大约阅读时间需要 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/

你可能感兴趣的文章