
暴力求解法
摩霄志在潜修羽
骐骥一跃,不能十步。驽马十驾,功在不舍。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
例题7-1 除法
【题目描述】输入正整数n,按从小到大的顺序输出所有形如abcde / fghij = n的表达式,其中a~j恰好为数字0~9的一个排列(可以有前导0),2≤n≤79input:62output:79546 / 01293 = 6294736 / 01528 = 62【分析】暴力也有暴力的技巧,是否需要枚举0-9的所有排列?没这个必要!只需要枚举fghij就可以算出a...原创 2018-11-22 21:34:48 · 709 阅读 · 0 评论 -
例题7-4 素数环
【题目描述】素数环,给定n,生成排列使得任意两相邻数之和为素数,首尾相加亦为素数【解析】略【代码】//素数环,给定n,生成排列使得任意两相邻数之和为素数,首尾相加亦为素数#include<iostream>#include<cmath>#include<cstring>using namespace std;const int maxn原创 2019-02-03 11:59:21 · 409 阅读 · 1 评论 -
蓝桥杯历届真题--让我怎能过大年
【题目描述】有如下的加法算式。其中每个汉字代表一个数字。(如存在对齐问题,可参见【图1.png】) 年 大年 过大年 能过大年 怎能过大年 我怎能过大年+ 让我怎能过大年------------------ 能能能能能能能请填写“让我怎能过大年” 所代表的整...原创 2018-12-03 19:06:22 · 697 阅读 · 0 评论 -
蓝桥杯历届真题--剪格子(DFS+回溯)
【题目描述】点击这里进入【分析】描述天坑!!!这道题竟然是先输入列,再输入行。导致我第一次WA了。另外这是一道很有争议的题,仅附上我的代码。从左上角开始向四个不同的方向进行搜索,把每个符合条件的元素加入,如果总和达到 sum/2,就说明有解。可以剪枝的部分是,如果最初输入的元素之和是奇数,那显然无解,不必进行DFS。【代码】#include<iostream>#inc...原创 2018-12-01 20:19:35 · 586 阅读 · 0 评论 -
蓝桥杯之填数问题
【题目描述】今有7对数字:两个1,两个2,两个3,…两个7,把它们排成一行。要求,两个1间有1个其它数字,两个2间有2个其它数字,以此类推,两个7之间有7个其它数字。如下就是一个符合要求的排列:17126425374635当然,如果把它倒过来,也是符合要求的。请你找出另一种符合要求的排列法,并且这个排列法是以74开头的。注意:只填写这个14位的整数,不能填写任何多余的内容,比如说明注释...原创 2018-12-01 18:21:58 · 255 阅读 · 0 评论 -
杭电1010--Tempter of the Bone(DFS+奇偶剪枝)
【题目描述】就是类似于迷宫问题,给出出发点、终点、限定时间(不能早到或者晚到)、墙壁。走过的地方不能再走,求能否在指定时间到达。【分析】很标准的DFS题,但是代码提交上去不是TLE就是WA了,学习了一下其他人的代码,发现自己的问题如下:起点没有设置为1,这导致了小狗可能走回起点剪枝不彻底,导致程序运行TLE奇偶剪枝设两点分别为 st(a,b)、en(c,d)求两点间最短到达时间...原创 2018-11-28 12:30:06 · 202 阅读 · 0 评论 -
例题7-5 困难的串
【题目描述】如果一个字符串包含两个相邻的重复子串,则称它是“容易的串”,其他串称为“困难的串”。例如, BB、ABCDABCD都是容易的串,而D、DC、ABDAD、CBABCBA都是困难的串。输入正整数n和L,输出由前L个字符组成的、字典序第k个困难的串。例如,当L=3时,前7个困难的串 分别为A、AB、ABA、ABAC、ABACA、ABACAB、ABACABA。输入保证答案不超过80个字符。...原创 2018-11-27 16:13:28 · 1786 阅读 · 1 评论 -
蓝桥杯历届真题之三羊献瑞(DFS)
【题目描述】三羊献瑞观察下面的加法算式: 祥 瑞 生 辉 + 三 羊 献 瑞 --------------- 三 羊 生 瑞 气(如果有对齐问题,可以参看【图1.jpg】)其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。【分析】起初想要枚举“三羊生瑞气”五个数,后...原创 2018-12-04 21:24:34 · 732 阅读 · 0 评论 -
八皇后问题
八皇后问题【介绍】八皇后问题,是一个古老而著名的问题,是回溯算法的典型案例。该问题是国际西洋棋棋手马克斯·贝瑟尔于1848年提出:在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。回溯求解回溯:即递归枚举算法,特点如其名,当无解时函数将返回上一层的调用。解决问题的重点就是递归枚举,以行作为参数依次向下进行遍历。对于每...原创 2018-11-25 13:19:43 · 190 阅读 · 0 评论 -
7.2.1 生成1-n的排列
【问题描述】尝试用递归的方法:先输出所有以1开头的排列,然后输出以2开头的排列,…一直到输出完以9开头的排列。【伪代码】void print_permutation(序列 A,集合 S){ if(S为空) 输出序列A; else 按照从小到大的顺序依次考虑S的每个元素V { print_permutation(在A的末尾添加V后得到的新序列,S-{V}); }}【代码】...原创 2018-11-22 22:47:13 · 353 阅读 · 0 评论 -
例题7-3 分数拆分
【题目描述】输入正整数k,找到所有的正整数x≥y,使得1/k=1/x+1/yinput:212output:221/2 = 1/6 + 1/31/2 = 1/4 + 1/481/12 = 1/156 + 1/131/12 = 1/84 + 1/141/12 = 1/60 + 1/151/12 = 1/48 + 1/161/12 = 1/36 + 1/181/12 ...原创 2018-11-22 22:27:10 · 710 阅读 · 0 评论 -
例题7-2 最大乘积
【题目描述】输入n个元素的序列s,找出一个连续序列的最大乘积,若最大乘积为负数,输出0表示无解。1<=n<=18,-10<=Si<=10例如:input:52 5 -1 2 -1output:20【分析】连续子序列有两个要素:起点和终点,因此只需要枚举起点与终点即可。由于每个元素的绝对值不超过10且不超过18个元素,因此最大乘积不会超过10^18,可用lo...原创 2018-11-22 21:53:18 · 421 阅读 · 0 评论 -
例题5-7 丑数
【描述】丑数是指不能被2,3,5以外的其他素数整除的数。把丑数从小到大排列起来,结果如下:1,2,3,4,5,6,8,9,10,12,15,…求第1500个丑数。【思路】从小到大依次生成。最基础的丑数是1,而后的所有丑数都是在这个基础上生成的。如果按照正向思维分析,需要考虑除2,3,5以外的所有素数–这显然不切实际。因此考虑派生的性质:假设一个丑数为x,那么2x,3x,5x也都是...原创 2019-02-03 15:25:16 · 824 阅读 · 0 评论