萌新第一次打hihoCoder的比赛有点慌

T1

T1并不是特别难想到dp就好做了

显而易见的是一个01背包问题

Code:

#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std; const int INF=;
int n,m,i,j,k,f[],son[],x; int main()
{
cin>>n;memset(son,,sizeof son);
for (int i=;i<n;i++) cin>>x,son[x]++;
memset(f,INF,sizeof f);f[]=;
for (int i=;i<=n;i++)
for (int j=n;j>=son[i];j--)
f[j]=min(f[j],f[j-son[i]]+);
for (int i=;i<n;i++)
{
if (f[i]>n) cout<<-<<" ";
else cout<<f[i]<<" ";
}
return ;
}

T2

T2的话是一个区间dp的题

可以抽象成在某一棵子树上维护方案数

在维护两个数组f,g

g[i]表示这棵子树到i点的方案数

f[i][j]表示[i,j]为一颗子树的方案数

Code:

#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
#define MOD 998244353
using namespace std; long long n,g[],f[][];
char A[],B[]; int main()
{
cin>>n;getchar();gets(A+);gets(B+);
for (int i=;i<=n;i++)
if (A[i]!='') f[i][i]=;
for (int i=n-;i>=;i--)
if (A[i]!='')
{
for (int j=i;j<=n;j++) g[j]=;
g[i]=;
for (int j=i+;j<=n;j++)
for (int k=j;k<=n;k++)
{
if (B[j]!='') g[k]=(g[k]+(long long)f[j][k]*g[j-])%MOD;
if (B[j]!='') f[i][k]=(f[i][k]+(long long)f[j][k]*g[j-])%MOD;
}
}
if (B[]=='') cout<<<<endl;
else cout<<f[][n]<<endl;
}

T3,T4尚未写好,以后再更

hihoCoder挑战赛25的更多相关文章

  1. hihoCoder挑战赛23

    hihoCoder挑战赛23 A.Emulator 题意 给一张图,有\(N(N \le 300)\)个点, 给出任意两点之间的最短路. 求最多可以去掉多少条边,使得任意两点的最短路长度不变. 思路 ...

  2. Wannafly挑战赛25游记

    Wannafly挑战赛25游记 A - 因子 题目大意: 令\(x=n!(n\le10^{12})\),给定一大于\(1\)的正整数\(p(p\le10000)\)求一个\(k\)使得\(p^k|x\ ...

  3. 【hihoCoder 1454】【hiho挑战赛25】【坑】Rikka with Tree II

    http://hihocoder.com/problemset/problem/1454 调了好长时间,谜之WA... 等我以后学好dp再来看为什么吧,先弃坑(╯‵□′)╯︵┻━┻ #include& ...

  4. [题解]hihoCoder挑战赛18——题目1 神奇字符串

    题目地址:http://hihocoder.com/problemset/problem/1264 时间限制:20000ms 单点时限:1000ms 内存限制:256MB 描述 我们说两个字符串是非常 ...

  5. hihocoder挑战赛26

    某蒟蒻成功的·写出了T1并rank16...小岛的题目真难... 传送门:http://hihocoder.com/contest/challenge26 T1 如果你想要暴力枚举的话显然是不行的 如 ...

  6. hihoCoder挑战赛11.题目4 : 高等理论计算机科学(LCA)

    clj在某场hihoCoder比赛中的一道题,表示clj的数学题实在6,这道图论貌似还算可以... 题目链接:http://hihocoder.com/problemset/problem/1167 ...

  7. hihoCoder挑战赛28 题目2 : 二进制翻转

    题目2 : 二进制翻转 时间限制:20000ms 单点时限:1000ms 内存限制:256MB 描述 定义函数 Rev(x) 表示把 x 在二进制表示下翻转后的值 例如: Rev(4)=1,因为 4 ...

  8. hihoCoder挑战赛28 题目1 : 异或排序

    题目1 : 异或排序 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 给定一个长度为 n 的非负整数序列 a[1..n] 你需要求有多少个非负整数 S 满足以下两个条件: ...

  9. hihoCoder挑战赛34 B题(快速求第k轮冒泡排序的结果)

    官方题解:https://media.hihocoder.com/contests/challenge34/tutorials-previewed.pdf 题目链接:http://hihocoder. ...

随机推荐

  1. python--常见模块

    本节大纲: 1.模块介绍 2.time&datetime 3.random. 4.os 5.sys 6.shutil 7.json&picle 8.shelve 9.xml处理 10. ...

  2. crm软件如何实现企业智能化管理?

    互联网技术的发展,让企业越来越重视客户的感知体验,企业只有适应并接受再逐步转向智能化发展模式,才能在市场竞争中取胜不被淘汰.选择一款适宜企业自身发展的CRM系统,根据自身的具体情况随需而定,企业才能更 ...

  3. 2016 icpc-ec-final

    一不小心惨变旅游队,不过上海的风景不错 顺带找其他队交流一下集训经验...或许可以成为选拔和集训16级的依据 A.直接模3就可以了,2^(3*n)%7=1 L.每场比赛3种情况,穷举就可以了 D.刚开 ...

  4. 挑战程序2.1.5 穷竭搜索>>宽度优先搜索

    先对比一下DFS和BFS         深度优先搜索DFS                                   宽度优先搜索BFS 明显可以看出搜索顺序不同. DFS是搜索单条路径到 ...

  5. 【前端】在Gulp中使用Babel

    Install $ npm install --save-dev gulp-babel babel-preset-es2015 用法1: const gulp = require('gulp'); c ...

  6. js sql C#时间、时间戳相互转换

    js. sql. C#时间.时间戳相互转换 //1.获取当前时间戳_c# ) / //2.时间戳->时间 C# DateTime b11 = GetTime(");//11位时间戳-& ...

  7. angular手势事件之on-Hold

    .controller( 'actionsheetCtl',['$scope',function($scope){ $scope.onHold=function(){ console.log(even ...

  8. xmemcached的使用

    转载 http://www.voidcn.com/blog/u010408365/article/p-4972896.html xmemcached主要特性 高性能 XMemcached同样是基于ja ...

  9. Arduino 极速入门系列 - 光控灯(1)- 关于理论和 LED 那些事

    点个 LED 闪亮好像太单调,这次来个光控 LED 灯.这个其实不需要 Arduino 也能做,这次只是用来演示一下 PWM 在 Arduino 里面的做法.PWM 原理后面会解释.这次用充电宝提供 ...

  10. Grafana + Zabbix --- 部署分布式监控系统

    阅读目录: 1. 关闭防火墙 2. 安装Zabbix下载源 3. ZabbixClient  --- 安装zabbix-agent代理 4. ZabbixServer --- 安装zabbix-ser ...