搜索
Myriad_Dreamin
这个作者很懒,什么都没留下…
展开
-
洛谷P1003 铺地毯
简单搜索。因为后放的地毯肯定在上面,所以只需要倒着搜索能“接住”点的地毯就行了。如果最后都没能“接住”就输出-1#include <iostream> using namespace std; struct point{ int a,b,g,k; }pt[100005]; int main(){ int i,n,x,y,flag=1; cin>>n; for(i=0;原创 2017-12-30 22:57:14 · 204 阅读 · 0 评论 -
BUPT kamiyoru's training #1 codeforces#486div.3
A - Diverse Team 签到题就不多说了。 #include <cstdio> int find[105]; int main(){ int n,k,distinc=0,a; scanf("%d%d",&n,&k); for(int i=1;i<=n;i++){ scanf("%d",&a); ...原创 2018-06-19 01:55:57 · 296 阅读 · 0 评论 -
2018 BUPT Winter Training #7 Div.2
A - Vacations 对不起,这题我写过hh,ctrl+c完事。DP一下就行了。 #include <cstdio> #include <algorithm> using namespace std; int dp[105][3]={0}; int main(){ int n,toda; scanf("%d",&n); for(in...原创 2018-03-07 22:32:16 · 226 阅读 · 0 评论 -
2018 BUPT Winter Training #2 Div.2
A - 数塔 给你一个数字金字塔,每个节点有值a" role="presentation" style="position: relative;">aaa,求根节点到叶节点的值的最大和 以矩阵的方式存储,有: dp[i][j]=a[i][j]+max(dp[i−1][j],dp[i−1][j−1])" role="presentation" styl原创 2018-01-31 17:22:51 · 331 阅读 · 0 评论 -
Codeforces Good Bye 2017 B - New Year and Buggy Bot
简单枚举情况。对于每一种可能的映射都尝试一遍,如果机器人“撞墙”了,则失败,如果在操作集消耗完之前走到终点,则成功。#include <cstdio> #include <cstring> char maze[55][55],ope[105]; int wayx[]={0,0,1,-1},wayy[]={1,-1,0,0}; int trys[25][5]={{0,1,2,3},{0,2,1,3},原创 2017-12-30 12:50:10 · 498 阅读 · 0 评论 -
北航OJ 0009~0015 2014级第一次算法上机
这是我2017年8月底写完的练习题,那时还什么都不会,到现在看这种题已经特别简单了。不过还是有很长一段路要走啊。(你可能发现有两个抄袭的,source直接百度就能找到了…,想了很久都没想出来,自己写又全是BUG,入门还真是不容易呀。)这是给我自己看的总结,也算是重新思考一遍算法的思想吧。 0009 零崎的人间冒险Ⅰ 题意:就是很普通的递归汉诺塔 #include int main(){原创 2018-01-05 00:13:38 · 1048 阅读 · 0 评论 -
Kuangbin专题 - 简单搜索 - A - 棋盘问题
一开始有点不会写这种dfs,后来到网上搜了一下,学会了sign标记。#include <cstdio> #include <cstring> char map[10][10];bool sign[10];int total; void dfs(int step,int n,int k){ if(k==0){ total++; return ; }原创 2018-01-04 18:20:15 · 314 阅读 · 0 评论 -
Kuangbin专题 - 简单搜索 - D - Fliptile
关灯问题需要注意的一点是:单调不能完成的任务是一定不能完成的,没有反复开关灯的操作…单调向下枚举… 这里我观察到了(i-1,j)点为1时是必须开一次灯的。 枚举第一行是否开灯即可(因为没有作为是否参考的第零行)。 很巧妙的是,这样参考下来,检查最后一行是否all0,如果不是,这样的开灯方式就一定不能完成操作。#include <cstdio> #include <cstring> int ma原创 2018-01-04 18:35:45 · 285 阅读 · 0 评论 -
Kuangbin专题 - 简单搜索 -C - Catch That Cow
这是第一个AC版本,思路是逐层标记,这样就能保证步法是单调枚举下去的。需要注意的是,如果之前已经走过了,就相当于“串回去”了,这种枝需要剪掉,否则bfs是无穷无尽的。#include <cstdio> #include <queue> #define ck(_a,_x); if(!sgn[_x]&&_x>0&&_x<=100000){_a.push(_x);sgn[_x]=true;} using原创 2018-01-04 18:28:15 · 205 阅读 · 0 评论 -
Kuangbin专题 简单搜索 - B - Dungeon Master
一开始没有用队列的,后来参考其他人的题解用队列又写了一遍,原来的版本就没有保存了…#include <cstdio> #include <queue> #include <algorithm> using namespace std; char map[35][35][35]; int wayz[10]={1,-1,0,0,0,0},lev,wayy[10]={0,0,0,0,1,-1},row,w原创 2018-01-04 18:22:58 · 250 阅读 · 0 评论 -
Codeforces Round #525 Div. 2 1088E. Ehab and a component choosing problem(贪心,dfs)
1.答案是全局最大正分量。 证明:假设有一分量S=max{val(S)∣S⊂G}S=\max\{val(S)|S\subset G\}S=max{val(S)∣S⊂G}.那么任意其它分量val(S′)⩽val(S)val(S&amp;amp;#x27;)\leqslant val(S)val(S′)⩽val(S).所以对任意kkk划分的分量,1k∑i=1kval(S1)⩽1kkval(S)=val(S)...原创 2018-12-05 03:19:30 · 195 阅读 · 0 评论