10 2021 档案
摘要:A. Array Elimination 题目大意: 一个数组有n个数,你可以进行若干次参数为k的“操作”使数组归零。输出所有可能的k。 “操作”:选择数组中的任意k个元素做两两与,得到x。再对这k个元素减掉x。 思路: 要全部归零,就是每一个数字的每一个二进制位都要变0 。而and操作
阅读全文
摘要:数字三角形 题目大意: 给定一个数字三角形,从顶部出发,在每一结点可以移动至其左下方或右下方,一直走到底层,求最大的和。 思路: 一拿到题目就会想到贪心去做,就跟着题目去模拟一遍: void dfs(int i , int j ){ ans += a[i][j] ; if(i == n)re
阅读全文
摘要:背包问题 1、01背包 题目大意: 有n个物品,一个容量为m的背包,每个物品拿或者不拿,问拿到的最大总价值是多少。 思路: dp三步走:dp数组含义 + 状态转移 + 初始化 首先,我们将dp[i][j]定义为在前i件物品中,用容量为j的背包去装东西,能装到的最大价值。其次考虑状态转移:
阅读全文
摘要:cf#747 E1. Rubik's Cube Coloring (easy version) ##题目大意: 有一颗满二叉树,每一个节点可以涂一种颜色, 相邻两个节点不能涂同一种也不能涂魔方中对面的颜色。给定层数x,问有多少种涂色方式。 ##思路: 从根节点开始往下, 根可以涂6中颜色, 子节点可
阅读全文