【回溯】
1
wdt_
即使上线也匆忙,新版本,愁断肠,orz...
展开
-
【搜索】C028_费解的开关(dfs 回溯)
一、题目描述每一步,游戏者可以改变某一个灯的状态。游戏者改变一个灯的状态会产生连锁反应:和这个灯上下左右相邻的灯也要相应地改变其状态。给定一些游戏的初始状态,编写程序判断游戏者是否可能在 6 步以内使所有的灯都变亮。输入格式第一行输入正整数n,代表数据中共有n个待解决的游戏初始状态。以下若干行数据分为n组,每组数据有5行,每行5个字符。每组数据描述了一个游戏的初始状态。各组数据间用一个...原创 2020-04-10 17:49:41 · 264 阅读 · 0 评论 -
【回溯】C000_LC_二叉树的所有路径(dfs / bfs)
一、题目Given a binary tree, return all root-to-leaf paths.Note: A leaf is a node with no children.Example: 1 / \2 3 \ 5Output: [“1->2->5”, “1->3”]Explanation: All root-to-le...原创 2019-09-05 22:39:29 · 302 阅读 · 0 评论 -
【回溯】C037_LQ_带分数(枚举分割点)
100 可以表示为带分数的形式:100 = 3 + 69258 / 714。还可以表示为:100 = 82 + 3546 / 197。注意特征:带分数中,数字1~9分别出现且只出现一次(不包含0)类似这样的带分数,100 有 11 种表示法输入从标准输入读入一个正整数N (N< 1000*1000)输出程序输出该数字用数码1~9不重复不遗漏地组成带分数表示的全部种数。注意:不要求输出每个表示,只统计有多少表示法!样例输入100 样例输出11原创 2020-08-21 22:14:06 · 190 阅读 · 0 评论 -
【回溯】B036_LQ_剪格子(第二次到原点时不计数)
如下图所示,3 x 3 的格子中填写了一些整数。+--*--+--+|10* 1|52|+--****--+|20|30* 1|*******--+| 1| 2| 3|+--+--+--+ 我们沿着图中的星号线剪开,得到两个部分,每个部分的数字和都是60。本题的要求就是请你编程判定:对给定的 m x n 的格子中的整数,是否可以分割为两个部分,使得这两个区域的数字和相等。如果存在多种解答,请输出包含左上角格子的那个区域包含的格子的最小数目。如果无法分割,则输出 0。输入程序先读入原创 2020-08-21 18:33:12 · 151 阅读 · 0 评论 -
【回溯】B036_LQ_整理玩具(区域染色 / BIT)
小明有一套玩具,一共包含NxM个部件。这些部件摆放在一个包含NxM个小格子的玩具盒中,每个小格子中恰好摆放一个部件。每一个部件上标记有一个0~9的整数,有可能有多个部件标记相同的整数。小明对玩具的摆放有特殊的要求:标记相同整数的部件必须摆在一起,组成一个矩形形状。如以下摆放是满足要求的:000220003344444 1224412244122330123456789以下摆放不满足要求:111221112233311111111122221122221111111原创 2020-08-21 10:22:38 · 846 阅读 · 0 评论 -
【回溯】B035_LQ_k调数列的个数(全排列+剪枝)
对于一个数列中的某个数,如果这个数比两侧的数都大或比两侧的数都小,我们称这个数为这个数列的一个转折点。如果一个数列有t个转折点,我们称这个数列为t+1调数列。给定两个正整数n,k。求在1~n的全排列中,有多少个数列是k调数列?输入描述:两个正整数n,k输出描述:答案,一个整数输入样例:4 2输出样例:12方法一:全排列+剪枝思路对于每一种排列,遍历时都检查是否可以提前截断#include<bits/stdc++.h>using namespace std;c原创 2020-08-20 21:43:06 · 266 阅读 · 0 评论 -
【回溯】B034_LQ_不相交路径数(读懂题意)
有一个 7X7 的方格。方格左上角顶点坐标为 (0,0),右下角坐标为 (7,7)。求满足下列条件的路径条数:1、起点和终点都是 (0,0)2、路径不自交3、路径长度不大于124、对于每一个顶点,有上下左右四个方向可以走,但是不能越界方法一:回溯注:#include<bits/stdc++.h>using namespace std;typedef long long ll;const int n=7, limit=12, d[4][2] = { {1,0},{0,-1},原创 2020-08-20 18:04:40 · 367 阅读 · 0 评论 -
【回溯】B033_LQ_填字母游戏(暴搜+注意参数传递机制)
小明经常玩 LOL 游戏上瘾,一次他想挑战K大师,不料K大师说:“我们先来玩个空格填字母的游戏,要是你不能赢我,就再别玩LOL了”。K大师在纸上画了一行n个格子,要小明和他交替往其中填入字母。 并且:轮到某人填的时候,只能在某个空格中填入L或O谁先让字母组成了“LOL”的字样,谁获胜。如果所有格子都填满了,仍无法组成LOL,则平局。小明试验了几次都输了,他很惭愧,希望你能用计算机帮他解开这个谜。输入第一行,数字 n(n<10),表示下面有 n 个初始局面。接下来,n 行,每行一个原创 2020-08-19 09:37:41 · 305 阅读 · 0 评论 -
【回溯】B033_LQ_碱基(暴搜+检查)
生物学家正在对 n 个物种进行研究。其中第i个物种的DNA序列为 s[i],其中的第 j 个碱基为 s[i][j],碱基一定是A、T、G、C之一生物学家想找到这些生物中一部分生物的一些共性,他们现在关注那些至少在 m 个生物中出现的长度为 k 的连续碱基序列。准确的说,科学家关心的序列用 2m 元组 (i1,p1,i2,p2…im,pm) 表示,满足:1<=i1<i2<…<im<=n;且对于所有 q(0<=q<k), s[i1][p1+q]=s[i2][p2原创 2020-08-18 17:29:41 · 259 阅读 · 0 评论 -
【回溯】B032_LQ_路径之谜(注意写法+原点可回)
小明冒充X星球的骑士,进入了一个奇怪的城堡。城堡里边什么都没有,只有方形石头铺成的地面。假设城堡地面是 n x n 个方格。【如图1.png】所示。按习俗,骑士要从西北角走到东南角。可以横向或纵向移动,但不能斜着走,也不能跳跃。每走到一个新方格,就要向正北方和正西方各射一箭。(城堡的西墙和北墙内各有 n 个靶子)同一个方格只允许经过一次。但不必走完所有的方格。如果只给出靶子上箭的数目,你能推断出骑士的行走路线吗?有时是可以的,比如图1.png中的例子。本题的要求就是已知箭靶数字,求骑士的行原创 2020-08-18 11:59:34 · 153 阅读 · 0 评论 -
【回溯】B031_LQ_随意组合(将两个被选数映射起来 + 注意题目的包括)
小明被绑架到X星球的巫师W那里。其时,W正在玩弄两组数据 (2 3 5 8) 和 (1 4 6 7)他命令小明从一组数据中分别取数与另一组中的数配对,共配成4对(组中的每个数必被用到)小明的配法是:{(8,7),(5,6),(3,4),(2,1)}巫师凝视片刻,突然说这个配法太棒了!因为:每个配对中的数字组成两位数,求平方和,无论正倒,居然相等:87^2 + 56^2 + 34^2 + 21^2 = 1230278^2 + 65^2 + 43^2 + 12^2 = 12302小明想了想原创 2020-08-18 09:24:25 · 161 阅读 · 0 评论 -
【回溯】B030_LQ_机器人塔 & 承压计算(枚举第一层+检查其它层 / 想成一维去做)
X星球的机器人表演拉拉队有两种服装,A和B。他们这次表演的是搭机器人塔。类似: A B B A B A A A B B B B B A BA B A B B A队内的组塔规则是:A 只能站在 AA 或 BB 的肩上。B 只能站在 AB 或 BA 的肩上。你的任务是帮助拉拉队计算一下,在给定A与B的人数时,可以组成多少种花样的塔。输入一行两个整数 M 和 N,空格分开(0<M, N<500), 分别表示A、B的人数,保证人数合理性。要求输出一个整原创 2020-08-17 22:54:25 · 207 阅读 · 0 评论 -
【回溯】B029_LQ_凑平方数 & 阶乘位数(记录状态新写法 | BigInteger)
把 0 ~ 9 这 10 个数字,分成多个组,每个组恰好是一个平方数,这是能够办到的。比如:0,36,5948721再比如:{1098524736};{1,25,6390784};{0,4,289,15376} 等等…注意,0 可以作为独立的数字,但不能作为多位数字的开始。分组时,必须用完所有的数字,不能重复,不能遗漏。如果不计较小组内数据的先后顺序,请问有多少种不同的分组方案?方法一:复杂度分析Time:O()O()O(),Space:O()O()O(),方法二:复杂度原创 2020-08-17 21:13:03 · 132 阅读 · 0 评论 -
【回溯】B028_LQ_完美正方形(换行深搜+剪枝)
如果一些边长互不相同的正方形,可以恰好拼出一个更大的正方形,则称其为完美正方形。历史上,人们花了很久才找到了若干完美正方形。比如:如下边长的 22 个正方形:2 3 4 6 7 8 12 13 14 15 16 17 18 21 22 23 24 26 27 28 50 60如图这样组合,就是一种解法此时,紧贴上边沿的是:60 50,紧贴下边沿的是:26 28 17 21 1822 阶完美正方形一共有 8 种右边的组合是另一种:2 5 9 11 16 17 19 21 22 24 26 30原创 2020-08-17 09:58:02 · 179 阅读 · 0 评论 -
【回溯】B027_LQ_六角幻方 & 四阶幻方 & 九宫幻方 & 反幻方 & 魔方状态 & 纸牌三角形(恶心的剪枝)
把 1、2、3 … 19 共 19 个整数排列成六角形状,如下:要求每个直线上的数字之和必须相等,共有 15 条 直线哦!再给点线索吧!我们预先填好了 2 个数字,第一行的头两个数字是:15、13,如图。请你填写出黄色一行的 5 个数字。数字间用空格分开方法一:深搜+剪枝思路真的恶心,#include<bits/stdc++.h>using namespace std;int a[20]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,1原创 2020-08-16 18:38:00 · 650 阅读 · 0 评论 -
【回溯】C025_LQ_骰子谜题(假数学+暴搜)
小明参加了少年宫的一项趣味活动:每个小朋友发给一个空白的骰子(它的6个面是空白的,没有数字),要小朋友自己设计每个面写哪个数字。但有如下要求:每个面只能填写 0 至 8 中的某一个数字。不同面可以填写同样的数字,但 6 个面总和必须等于 24。填好后,小朋友可以用自己填写好数字的骰子向少年宫的两个机器人挑战----玩掷骰子游戏。规则如下:三方同时掷出自己的骰子,如果出现任何相同的数字,则三方都不计分。如果三方数字都不同,则最小数字一方扣 1 分,最大数字一方加 1 分。小明看到了两个机器原创 2020-08-15 17:35:10 · 264 阅读 · 0 评论 -
【回溯】C024_LQ_填算式(暴搜)
请看下面的算式:(ABCD - EFGH) * XY = 900每个字母代表一个0~9的数字,不同字母代表不同数字,首位不能为0比如,(5012 - 4987) * 36 就是一个解。请找到另一个解,并提交该解中 ABCD 所代表的整数。请严格按照格式,通过浏览器提交答案。注意:只提交 ABCD 所代表的整数,不要写其它附加内容,比如:说明性的文字方法一:暴搜import java.util.*;import java.math.*;import java.io.*;public cl原创 2020-08-15 11:22:22 · 119 阅读 · 0 评论 -
【回溯】B024_LC_复原IP地址(枚举数字长度+剪枝)
一、Problem给定一个只包含数字的字符串,复原它并返回所有可能的 IP 地址格式。有效的 IP 地址正好由四个整数(每个整数位于 0 到 255 之间组成),整数之间用 ‘.’ 分隔。输入: “25525511135”输出: [“255.255.11.135”, “255.255.111.35”]二、Solution方法一:思路这题在于枚举一个长度 len,其它随缘改…class Solution {public: vector<string> ans; int原创 2020-08-09 21:24:36 · 99 阅读 · 0 评论 -
【回溯】B023_LC_优美的排列(暴搜 / 空间压缩)
一、Problem假设有从 1 到 N 的 N 个整数,如果从这 N 个数字中成功构造出一个数组,使得数组的第 i 位 (1 <= i <= N) 满足如下两个条件中的一个,我们就称这个数组为一个优美的排列。条件:第 i 位的数字能被 i 整除i 能被第 i 位上的数字整除现在给定一个整数 N,请问可以构造多少个优美的排列?示例1:输入: 2输出: 2解释: 第 1 个优美的排列是 [1, 2]: 第 1 个位置(i=1)上的数字是1,1能被 i(i=1)整除 第原创 2020-08-05 22:52:38 · 129 阅读 · 0 评论 -
【回溯】B022_LC_累加数(暴搜 / 空间压缩 / 进阶)
一、Problem累加数是一个字符串,组成它的数字可以形成累加序列一个有效的累加序列必须至少包含 3 个数。除了最开始的两个数以外,字符串中的其他数都等于它之前两个数相加的和给定一个只包含数字 ‘0’-‘9’ 的字符串,编写一个算法来判断给定输入是否是累加数说明: 累加序列里的数不会以 0 开头,所以不会出现 1, 2, 03 或者 1, 02, 3 的情况示例 1:输入: "112358"输出: true 解释: 累加序列为: 1, 1, 2, 3, 5, 8;1 + 1 = 2, 1 +原创 2020-08-05 21:40:59 · 129 阅读 · 0 评论 -
【回溯】A021_LC_单词拆分 II(暴搜 / 下标记忆化)
二、单词拆分 II给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,在字符串中增加空格来构建一个句子,使得句子中所有的单词都在词典中。返回所有这些可能的句子说明:分隔时可以重复使用字典中的单词。你可以假设字典中没有重复的单词。输入:s = "catsanddog"wordDict = ["cat", "cats", "and", "sand", "dog"]输出:[ "cats and dog", "cat sand dog"]方法一:回溯 / 记忆化原创 2020-08-05 18:24:34 · 196 阅读 · 0 评论 -
【回溯】B020_LC_单词搜索 I~II(暴搜 / trie 优化)
一、单词搜索 I给定一个二维网格和一个单词,找出该单词是否存在于网格中。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。board =[ ['A','B','C','E'], ['S','F','C','S'], ['A','D','E','E']]给定 word = "ABCCED", 返回 true给定 word = "SEE", 返回 true给定 word = "ABCB",原创 2020-08-05 17:33:24 · 154 阅读 · 0 评论 -
【回溯】B019_LC_第k个排列(暴搜 / 数学剪枝)
一、Problem给出集合 [1,2,3,…,n],其所有元素共有 n! 种排列。按大小顺序列出所有排列情况,并一一标记,当 n = 3 时, 所有排列如下:"123""132""213""231""312""321"给定 n 和 k,返回第 k 个排列。说明:给定 n 的范围是 [1, 9]。给定 k 的范围是[1, n!]。示例 1:输入: n = 3, k = 3输出: "213"示例 2:输入: n = 4, k = 9输出: "2314"二、Solut原创 2020-08-05 10:20:41 · 180 阅读 · 0 评论 -
【回溯】B019_LC_祖玛游戏(暴搜 / 记忆化)
一、Problem回忆一下祖玛游戏。现在桌上有一串球,颜色有红色®,黄色(Y),蓝色(B),绿色(G),还有白色(W)。 现在你手里也有几个球。每一次,你可以从手里的球选一个,然后把这个球插入到一串球中的某个位置上(包括最左端,最右端)。接着,如果有出现三个或者三个以上颜色相同的球相连的话,就把它们移除掉。重复这一步骤直到桌上所有的球都被移除。找到插入并可以移除掉桌上所有球所需的最少的球数。如果不能移除桌上所有的球,输出 -1 。输入: "WRRBBW", "RB" 输出: -1 解释: WRR原创 2020-08-04 17:13:45 · 160 阅读 · 0 评论 -
【回溯】A018_LC_24 点游戏(next_permutation / 暴搜)
一、Problem你有 4 张写有 1 到 9 数字的牌。你需要判断是否能通过 *,/,+,-,(,) 的运算得到 24。示例 1:输入: [4, 1, 8, 7]输出: True解释: (8-4) * (7-1) = 24示例 2:输入: [1, 2, 1, 2]输出: False注意:除法运算符 / 表示实数除法,而不是整数除法。例如 4 / (1 - 2/3) = 12每个运算符对两个数进行运算。特别是我们不能用 - 作为一元运算符。例如,[1, 1, 1, 1] 作为输入原创 2020-08-03 20:42:13 · 177 阅读 · 0 评论 -
【回溯】B017_LC_递增子序列(去重)
一、Problem给定一个整型数组, 你的任务是找到所有该数组的递增子序列,递增子序列的长度至少是2。输入: [4, 6, 7, 7]输出: [[4, 6], [4, 7], [4, 6, 7], [4, 6, 7, 7], [6, 7], [6, 7, 7], [7,7], [4,7,7]]说明:给定数组的长度不会超过15。数组中的整数范围是 [-100,100]。给定数组中可能包含重复数字,相等的数字应该被视为递增的一种情况。二、Solution方法一:暴搜思路如果我们现在已经有原创 2020-08-03 11:44:29 · 161 阅读 · 0 评论 -
【回溯】B017_LC_火柴拼正方形(降序排列)
一、Problem还记得童话《卖火柴的小女孩》吗?现在,你知道小女孩有多少根火柴,请找出一种能使用所有火柴拼成一个正方形的方法。不能折断火柴,可以把火柴连接起来,并且每根火柴都要用到。输入为小女孩拥有火柴的数目,每根火柴用其长度表示。输出即为是否能用所有的火柴拼成正方形。示例 1:输入: [1,1,2,2,2]输出: true解释: 能拼成一个边长为2的正方形,每边两根火柴示例 2:输入: [3,3,3,3,4]输出: false解释: 不能用所有火柴拼成一个正方形。注意:给定的原创 2020-08-03 10:04:34 · 228 阅读 · 0 评论 -
【回溯】B016_LC_金字塔转换矩阵(非回溯之从底到高 / 回溯)
一、Problem现在,我们用一些方块来堆砌一个金字塔。 每个方块用仅包含一个字母的字符串表示。使用三元组表示金字塔的堆砌规则如下:对于三元组(A, B, C) ,“C”为顶层方块,方块“A”、“B”分别作为方块“C”下一层的的左、右子块。当且仅当(A, B, C)是被允许的三元组,我们才可以将其堆砌上。初始时,给定金字塔的基层 bottom,用一个字符串表示。一个允许的三元组列表 allowed,每个三元组用一个长度为 3 的字符串表示。如果可以由基层一直堆到塔尖就返回 true ,否则返回 f原创 2020-08-02 17:57:50 · 214 阅读 · 0 评论 -
【回溯】B015_LC_划分为k个相等的子集(得到每一次dfs的返回状态)
一、Problem给定一个整数数组 nums 和一个正整数 k,找出是否有可能把这个数组分成 k 个非空子集,其总和都相等输入: nums = [4, 3, 2, 3, 5, 2, 1], k = 4输出: True说明: 有可能将其分成 4 个子集(5),(1,4),(2,3),(2,3)等于总和。提示:1 <= k <= len(nums) <= 160 < nums[i] < 10000二、Solution方法一:复杂度分析时间复杂度:O(原创 2020-07-28 12:07:49 · 168 阅读 · 0 评论 -
【回溯】B014_LC_将数组拆分成斐波那契序列(暴搜 + 剪枝)
一、Problem给定一个数字字符串 S,比如 S = “123456579”,我们可以将它分成斐波那契式的序列 [123, 456, 579]。形式上,斐波那契式序列是一个非负整数列表 F,且满足:0 <= F[i] <= 2^31 - 1,(也就是说,每个整数都符合 32 位有符号整数类型);F.length >= 3;对于所有的0 <= i < F.length - 2,都有 F[i] + F[i+1] = F[i+2] 成立。另外,请注意,将字符串拆分成原创 2020-07-22 21:56:09 · 477 阅读 · 0 评论 -
【回溯】A013_LC_相似度为 K 的字符串(剪枝)
一、Problem如果可以通过将 A 中的两个小写字母精确地交换位置 K 次得到与 B 相等的字符串,我们称字符串 A 和 B 的相似度为 K(K 为非负整数)。给定两个字母异位词 A 和 B ,返回 A 和 B 的相似度 K 的最小值。输入:A = "aabc", B = "abca"输出:2提示:1 <= A.length == B.length <= 20A 和 B 只包含集合 {‘a’, ‘b’, ‘c’, ‘d’, ‘e’, ‘f’} 中的小写字母。二、Solutio原创 2020-07-21 16:08:46 · 176 阅读 · 0 评论 -
【回溯】B012_LC_重新排序得到 2 的幂(暴搜 / 反向思维)
一、Problem给定正整数 N ,我们按任何顺序(包括原始顺序)将数字重新排序,注意其前导数字不能为零。如果我们可以通过上述方式得到 2 的幂,返回 true;否则,返回 false输入:16输出:true示例 4:输入:24输出:false示例 5:输入:46输出:true提示:1 <= N <= 10^9二、Solution方法一:回溯class Solution {public: bool found = false; bool chk(stri原创 2020-07-18 22:55:20 · 146 阅读 · 0 评论 -
【回溯】B011_LC_正方形数组的数目(全排列变形)
一、Problem给定一个非负整数数组 A,如果该数组每对相邻元素之和是一个完全平方数,则称这一数组为正方形数组。返回 A 的正方形排列的数目。两个排列 A1 和 A2 不同的充要条件是存在某个索引 i,使得 A1[i] != A2[i]。示例 1:输入:[1,17,8]输出:2解释:[1,8,17] 和 [17,8,1] 都是有效的排列。示例 2:输入:[2,2,2]输出:1提示:1 <= A.length <= 120 <= A[i] <= 1e9原创 2020-07-09 15:46:44 · 235 阅读 · 0 评论 -
【回溯】B010_LC_连续差相同的数字(构造)
一、Problem返回所有长度为 N 且满足其每两个连续位上的数字之间的差的绝对值为 K 的非负整数。请注意,除了数字 0 本身之外,答案中的每个数字都不能有前导零。例如,01 因为有一个前导零,所以是无效的;但 0 是有效的。你可以按任何顺序返回答案。输入:N = 3, K = 7输出:[181,292,707,818,929]解释:注意,070 不是一个有效的数字,因为它有前导零。提示:1 <= N <= 90 <= K <= 9二、Solution方法一原创 2020-07-06 16:02:25 · 302 阅读 · 0 评论 -
【回溯】A066_LC_串联字符串的最大长度(暴搜 / 二进制枚举)
一、ProblemGiven a list of words, list of single letters (might be repeating) and score of every character.Return the maximum score of any valid set of words formed by using the given letters (words[i] cannot be used two or more times).It is not necessar原创 2020-06-12 18:06:48 · 183 阅读 · 0 评论 -
【回溯】B065_LC_串联字符串的最大长度(二进制 (枚举 / 递归))
一、ProblemGiven an array of strings arr. String s is a concatenation of a sub-sequence of arr which have unique characters.Return the maximum possible length of s.Input: arr = ["un","iq","ue"]Output: 4Explanation: All possible concatenations are "","un原创 2020-06-11 11:37:41 · 183 阅读 · 0 评论 -
【回溯】A064_LC_口算难题(暴搜 / 预处理权值)
一、ProblemGiven an equation, represented by words on left side and the result on right side.You need to check if the equation is solvable under the following rules:Each character is decoded as one digit (0 - 9).Every pair of different characters they mu原创 2020-06-07 22:36:11 · 216 阅读 · 0 评论 -
【状压 dp】A000_LC_转化为全零矩阵的最少反转次数(回溯 / dp / bfs)
一、ProblemGiven a m x n binary matrix mat. In one step, you can choose one cell and flip it and all the four neighbours of it if they exist (Flip is changing 1 to 0 and 0 to 1). A pair of cells are called neighboors if they share one edge.Return the minim原创 2020-06-03 23:28:09 · 254 阅读 · 0 评论 -
【回溯】B063_LG_数的划分(记录 pre / 剪枝)
一、Problem7 34说明/提示四种分法为:1,1,51,2,41,3,32,2,3二、Solution方法一:dfs最暴力的做法就是,用一个容器实时记录取到的数,当 n = N && k = K 时,再用 set 去重WA:set 中原本的 equals 方法根本对数组取不了重。import java.util.*;import java.math.*;import java.io.*;public class Main{ static clas原创 2020-05-28 22:41:35 · 264 阅读 · 2 评论 -
【回溯】B062_LG_矩阵取数(选与不选)
一、Problem34 467 75 63 1029 29 92 1421 68 71 568 67 91 252 387 70 8510 3 173 31 1 11 99 11 1 127117299二、Solution方法一:dfs和棋子放置很像,先从左往右搜,到达最右边就换一行,继续从左向右搜。对于每一个格子的数,我们都可以选货不选。选完最后一行,就结算。import java.util.*;import java.math.*;import原创 2020-05-28 21:32:41 · 184 阅读 · 0 评论