动态规划
文章平均质量分 54
倔强的blackatao
这个作者很懒,什么都没留下…
展开
-
AtCoderBeginnerContest134DEF
AtCoderBeginnerContest134DEFhttps://atcoder.jp/contests/abc134D题题意:n个盒子,第i个盒子上标注了数字i对于每一个盒子,可以选择放1个球或者不放一个操作序列(每个盒子放或不放)别称为good,当满足下面条件:对于所有属于1 - n 的 i 盒子 ,编号是它的倍数的盒子里放的球的总和 % 2 等于a[i]思路:看别人的思路有点没看懂,先埋个坑待填。实际上题目都不一定翻对了。。E题题意:求最长上升子序列个数思路:nl原创 2021-06-01 23:31:19 · 216 阅读 · 0 评论 -
AtCoderBeginnerContest132 DEF
AtCoderBeginnerContest132 DEFhttps://atcoder.jp/contests/abc132D题 排列组合题意:给定n,k,代表n个球中有k个蓝球,n-k个红球将这n个球排成一列,每次可以将连续的一段蓝球取走,直到所有的蓝球全部被取走输出k个数其中i(1<=i<=k)表示取 i 次才能取走所有的蓝球的摆放球的方案数思路:好久没写排列组合,不管是求法还是写法都有些忘了,温故而知新啊定义m代表篮球个数,t代表红球个数,假设要取 i 次,t个红球代原创 2021-05-30 23:49:43 · 190 阅读 · 0 评论 -
AtCoderBeginnerContest130 EF
AtCoderBeginnerContest130 EFhttps://atcoder.jp/contests/abc130E题 dp题意:求数组s和数组t的公共子序列个数思路:f [ i ] [ j ] s中选到了第i个,t中选到了第j个且一定选第j个的方案数转移方程:如果s[i] ! = t[ j ] 则 f [ i ][ j ] = f [ i - 1] [ j ]如果s[i] == t[ j ]则 f [ i ] [ j ] = sum(f[i-1][1],f[i-1][2]…,原创 2021-05-28 17:44:22 · 175 阅读 · 0 评论 -
AtCoderBeginnerContest129 DE
AtCoderBeginnerContest129 DEFhttps://atcoder.jp/contests/abc129D题题意:n*m的矩阵,存在 . 和 # 两种,#代表障碍,.代表通的。要找个.放灯,灯可以往上下左右照,遇到障碍物就会被挡住。求找个地方放灯以达到照射的最大格数。思路:dp,f[i][j][k] (k的范围是0,1,2,3)代表 到从第k个方向上到 ( i , j ) 有 f[i][j][k]个格子是通的0代表左,1代表上,2代表右,3代表下if(s[i]原创 2021-05-27 23:04:02 · 200 阅读 · 0 评论 -
AtCoder Beginner Contest 202 D题
AtCoder Beginner Contest 202 D题https://atcoder.jp/contests/abc202/tasks/abc202_d题意:给定A,B,K要求生成一个由A个’a’,B个’b’组成的字典序排在第k个的字符串思路:dp如何确定答案第一位为’a’还是’b’? 有大于等于k个字符串第一位为a,则a,否则为b定义 f [ i ] [ j ] 代表 由 i个a 和 j 个b 组成的字符串的个数f [ i ] [ j ] = f [ i - 1 ] [ j ]原创 2021-05-23 23:41:10 · 273 阅读 · 1 评论 -
【动态规划】POJ 3176 Cow Bowling
题意:给定一个数塔,第i行有i个数。现在需要找到一条从树顶结点遍历到树底结点的最长路径,即遍历的结点中数字相加的和最大。且每个结点只许向其下层相邻的左右两个结点遍历。#include <iostream>#include <algorithm>#include <cstring>#include <cstdio>#include <string>#include <functional>using namespace s.原创 2020-07-24 18:53:48 · 147 阅读 · 0 评论 -
【分组背包】【bitset】简单瞎搞题
https://ac.nowcoder.com/acm/problem/17193题目描述:一共有 n个数,第 i 个数是 xixi 可以取 [li , ri] 中任意的一个值。设S= ∑ xi2,求 S 种类数。输入描述:第一行一个数 n。然后 n 行,每行两个数表示 li,ri。输出描述:输出一行一个数表示答案。题意:相当于是问有一个背包,有n个组,每组选一个数,问最后背包能装的体积有多少种方案。#include <bits/stdc++.h>using names原创 2020-05-23 10:45:04 · 184 阅读 · 0 评论