Loading

上一页 1 ··· 19 20 21 22 23 24 25 26 27 ··· 40 下一页
摘要: a[i] 表示可以选择数i的个数。 对于每一组询问a,求出能够组合出的被4整除的最大的数。 显然是贪心构造,被4整除就等价于末尾两位被4整除。 需要注意的点有: 前导0,单个数字 这里通过string自带的比较性质写了一个cmp函数。 void solve() { memset(val, 0, si 阅读全文
posted @ 2020-08-19 19:48 MQFLLY 阅读(177) 评论(0) 推荐(0) 编辑
摘要: 给一个n * m 的草地,初始时刻没有草,每单位时刻每块会长草。 在t时刻,将在第 x 行或者第 y 列锄草。 问最终共锄了多少草。 暴力方法: 标记pre[maxn][maxn],表示这个点上次的锄草时间,每次锄草都遍历当前行/列,并且标记pre。在线更新res 复杂度k*n 优化方法: 标记l[ 阅读全文
posted @ 2020-08-19 19:44 MQFLLY 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 最初有能量n,且能力上限为n。 每天可以选择消耗x获得水元素,也可以不获得。 每天结束时会自动回复y能量。 问第m天时最多获得多少水元素。 x + y < n 1.若y >= x 。则每天都能恢复,直接输出m 2.若y < x。则每天恢复都会产生贡献。输出 (n + y * (m - 1)) / x 阅读全文
posted @ 2020-08-19 19:39 MQFLLY 阅读(281) 评论(0) 推荐(0) 编辑
摘要: 给定一个有 n 个节点和 m 条有向边的图。每个节点上有一个小写字母。 我们将路径的值定义为最经常出现的字母的数目。例如,如果路径上的字母是 “abaca”,那么该路径的值是 3。 你的任务是找到一条值最大的路径,并将这条路径的值输出。 显然条件是必须在一条路径上,容易想到限制要求拓扑排序,因此可以 阅读全文
posted @ 2020-08-18 21:36 MQFLLY 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 给定一个火车的入站顺序,问是否可能以规定的顺序出站。 背景实际上是卡特兰数。 可以联想到用栈和队列来模拟这一过程。 如果进栈的过程中发现和队首相同就让他出栈。 string s1, s2; int main() { int n; while (cin >> n) { cin >> s1 >> s2; 阅读全文
posted @ 2020-08-18 20:25 MQFLLY 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 每个字母都有价值,A的价值是1,B的价值是2,Z的价值是26。现给定26个字母的数量,问能凑到总价值<=50的单词的方案数是多少。 注意HDU , UDH属于相同的单词。 形式上,普通型母函数用于解决多重集的组合问题, 指数型母函数用于解决多重集的排列问题。 此题用普通型母函数求解。 构造母函数 于 阅读全文
posted @ 2020-08-18 19:57 MQFLLY 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 给定一个字符串,问其能通过重新排列生成多少不同的回文串。 显然只需要考虑一边就好了,考虑一边实际上就是多重集的全排列问题。 ll f[505]; void init() { f[0] = 1ll; for (int i = 1; i <= 500; i++) f[i] = f[i - 1] * i 阅读全文
posted @ 2020-08-18 17:09 MQFLLY 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 给出数组A和B问是否相等。 可以用java的bigdecimal 和 string的去末尾0函数实现。 public static void main(String[] args) { Scanner in=new Scanner(System.in); while(in.hasNextBigDec 阅读全文
posted @ 2020-08-17 20:54 MQFLLY 阅读(103) 评论(0) 推荐(0) 编辑
摘要: 可见,可以求出0-10克的重量,且方案数都是1. 此题就是用多项式相乘的原理求幂次和系数。 int c1[130]; int c2[130]; int main() { int n; while (~scanf("%d", &n)) { for (int i = 0; i <= n; i++) c1 阅读全文
posted @ 2020-08-17 20:33 MQFLLY 阅读(77) 评论(0) 推荐(0) 编辑
摘要: 计算所有线段的所有子集的复杂度的和。 复杂度:线段集合的连通块个数。 连通块:不相交的并 考虑每个线段对前 i - 1个线段的贡献,若不选,则复杂度和不变,若选,则不相交的部分会贡献 2 ^ x 的复杂度。 故每次只需计算x的大小,x的大小可以建立前缀和数组来维护。 void Put(ll x) { 阅读全文
posted @ 2020-08-17 19:57 MQFLLY 阅读(126) 评论(0) 推荐(0) 编辑
上一页 1 ··· 19 20 21 22 23 24 25 26 27 ··· 40 下一页