枚举专题

无聊听了蓝桥学苑的系列网课,有些东西还是值得学习的。   哈希表的运用(unordered_map) c++ 11的新东西,map是基于红黑树的,这个是基于哈希表的,所以单次复杂度是O (1),但是建表的时候时间复杂度可能会退化。 题目1链接:http://hihocoder.com...

2018-07-30 10:36:33

阅读数:23

评论数:0

2015蓝桥杯国赛C题 代码填空

题目:    标题:关联账户为增大反腐力度,某地警方专门支队,对若干银行账户展开调查。如果两个账户间发生过转账,则认为有关联。如果a,b间有关联, b,c间有关联,则认为a,c间也有关联。对于调查范围内的n个账户(编号0到n-1),警方已知道m条因转账引起的直接关联。现在希望知道任意给定的两个账户...

2018-05-16 20:36:37

阅读数:24

评论数:0

Codeforces eduR42 C(枚举)

既然蓝桥杯过了,从今日起恢复每日打卡。传送门:点击打开链接每日打卡(1/1)题目大意:    给你一个正整数(1-2e9),要求出至少删去其中几个数字,才能让它变成一个完全平方数。思路一    也是我想的思路,对于数n的每一位,我们都有删或者不删两种操作,也就是说,至多求2^9次后,我们就能得到结...

2018-04-11 21:50:38

阅读数:23

评论数:0

ZOJ2477 拼魔方

每日打卡(1/2)传送门:点击打开链接题目大意:    给你一个摊开的魔方,问你是否能在五步之内复原,如果能,输出对应的步骤。题目思路:    首先需要预处理一下(打表),将各种转动模拟出来。#include<iostream> #include&...

2018-03-13 12:26:40

阅读数:41

评论数:0

hdu1560 DNA序列(IDA*)

每日打卡(1/1)传送门:点击打开链接题目大意:        如上图所示,求按照此方法拼接所有字符串,最短长度是多少。题目思路:    本题用迭代加深搜索,即IDA*。将在代码边上注释详细思路。#include<cstdio> #include&...

2018-03-12 17:03:50

阅读数:49

评论数:0

hdu3533 炮弹迷宫问题

每日打卡(1/1) (补:昨天生病了)传送门:点击打开链接题目大意:    地图上有若干门大炮,每门大炮有个朝向,隔若干时间会发射一枚炮弹,炮弹有速度,只能停在格点上。问人从起点到终点,要求不被大炮打中,可以在某点停留不动,问到终点最少要多少时间;题目思路:    由于这题数据是有一定问题的,在方...

2018-03-12 15:41:59

阅读数:30

评论数:0

hdu2181 (旅行商问题)

每日打卡(1/1)传送门:点击打开链接题目大意:    遍历每个点后回到开头,求路线,全部输出题目思路:    DFS即可。debug了将近一个小时,最后发现错误出在注释处。#include<iostream> #include<c...

2018-03-10 21:58:51

阅读数:50

评论数:0

HDOJ 1495 倒可乐(BFS)

每日打卡(1/2)传送门:点击打开链接题目大意:有一瓶可乐和两个杯子,瞎倒以后,要求平分这瓶可乐。    需要注意的是:可乐也可以放在瓶子里面喝。思路:    感觉比之前倒水的那道题目简单,但是题意有点模糊不清,没有说放在瓶子里也能喝。    主要就是一个循环6次的BFS,思路以及解法都和倒水那题...

2018-03-03 17:06:13

阅读数:36

评论数:0

HDU1241 求联通块个数(DFS)

每日打卡(1/1)传送门:点击打开链接题目大意:      求联通块个数思路:      把n*m的图完整遍历一遍,如果遇到一个点是@,那么就搜索当前点,将和其所有联通的点全部改为‘*’,并且总数+1,然后就求出了联通块的个数。代码:#include<iostream&...

2018-03-02 16:26:43

阅读数:98

评论数:0

POJ3984 迷宫问题(BFS+标记路径)

每日打卡(1/1)传送门:点击打开链接题目大意:    01迷宫,0能走1不能走,从左上角走到右下角,要求输出最短路径。思路:    BFS,汲取前天题目的经验,采用结构体指针标记路径,然后输出。代码:#include<iostream> #includ...

2018-03-01 20:22:56

阅读数:24

评论数:0

FZU2150 烧火游戏(双向BFS)

每日打卡(1/1)传送门:点击打开链接    题目大意:有一个n*m的草地和空地,#表示草地,其中只有草地能被点着,可以任选两块草地进行点着,每块烧着的草地在1s后会延伸到上下左右的格子,问烧完所有格子需要多少时间。如果不能烧完,输出-1.    题目思路:采用双路BFS的思想,每次加入两个点进行...

2018-02-28 22:16:45

阅读数:40

评论数:0

POJ 3414 倒水(BFS+标记路径)

每日打卡(1/1)传送门:点击打开链接题目大意:    瓶子1能装a升水,瓶子2能装b升水,问要装c升水最少要几步?题解:    明显的BFS,其中需要注意的地方就是记录路径。    在结构体中设置一个node *pre,pre指向之前访问的操作,而结构体数组t也是BFS中一个比较新颖的操作。代码...

2018-02-27 20:49:22

阅读数:37

评论数:0

POJ3126 素数路径(BFS)

每日打卡(1/1)传送门:点击打开链接    题目大意:输入一个素数,变换到另一个素数,但期间一次只能改变一个数字,并且改变数字后的数依然是素数。题解:    主体是BFS,先用欧拉筛法把素数表打出来,然后依次修改每一位数,判断修改后的数是否为素数。#include<iost...

2018-02-26 20:52:59

阅读数:39

评论数:0

Codeforces Round466 B(暴力)

每日打卡(2/2)传送门:点击打开链接题目大意:将一个数n转化成1,可以有两种操作:(1)n减去1,这需要花费a;(2)n/k,当且仅当(n%k==0)可以实行,这需要花费b请问:将n变为1,最少需要花费多少?思路:    对于一个数x,如果可以整除k,那么需要比较一下(n-1)*a和b的大小,哪...

2018-02-25 22:14:20

阅读数:36

评论数:0

POJ 1426 (BFS)

每日打卡(1/2)传送门:点击打开链接题目大意:    寻找一个是n(1 <= n <= 200)的倍数的整数,并且这个整数只能由1和0组成。思路:    首先,n是一个不小于1的数,假设最终求得的数是m,那么m必然第一位是1.     确定了首位后,出...

2018-02-25 18:53:50

阅读数:22

评论数:0

POJ3279 翻硬币(状态压缩DFS)

每日打卡(1/1)传送门:点击打开链接题目大意:一个n*m的矩阵翻硬币,翻一枚硬币会涉及周围四个,求将所有硬币正面朝上最少需要翻哪几个硬币。思路:    与之前一题求最少要翻多少次不一样,这次要记录状态。    首先我们先想到枚举第一排的翻法,然后对其他排时,只要上面一个硬币是反面朝上就翻,最后c...

2018-02-24 23:13:02

阅读数:82

评论数:0

POJ3278 农夫找牛(BFS)

每日打卡(1/1)传送门:点击打开链接题目大意:农夫在位置n,要去位置k。只能去前后两格或者到2*x(x为当前位置)的去,问到k最少要多少步。由于思维惯性,看见暴力题第一反应是DFS,结果搜了半天搜不出来,其实这是可以预见的,仔细想想就可以知道DFS的上界不好确定,大大加大了搜索的深度。所以,正确...

2018-02-23 21:43:31

阅读数:183

评论数:0

POJ2251 3D迷宫(BFS)

每日打卡(2/2)点击打开链接题目大意:       一个三维的迷宫,给定起点和终点,求最短路径。        ps:长宽高均不超过30思路1:    首先想到DFS,只是第一次写三维的DFS,感觉和二维没什么不一样。#include<iostream&gt...

2018-02-22 21:09:05

阅读数:86

评论数:0

POJ1321 棋盘摆放问题(DFS)

每日打卡(1/2)  传送连接:点击打开链接题目大意:    给你一个n*n的棋盘,其中只有标#的格子能放棋子,且两个棋子不能位于棋盘的同一行或同一列,要求摆k个棋子,求方案数。大致思路:    裸DFS,和n皇后思路相同。以行数作为基准,如果当前列有符合要求的格子,可以采取放或不放两种方法,最后...

2018-02-22 12:39:31

阅读数:51

评论数:0

TSOJ1352(改) 用暴力和差分法解决RMQ问题

题目简介如下:    总共有n个花坛,初始均为0朵花。    首先进行m个操作,对于每一个操作,输入l和r,在区间a[l,r]每块种一朵花;    接着进行t个操作,对于每一个操作,输入l和r,查询区间[l,r]上共有多少朵花。样例输入:5 2 21 51 22 33 4样例输出:32   首先我...

2018-01-08 13:35:29

阅读数:96

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭