搜索
Loi_whales
生活不止眼前的苟且,还有诗和远方的田野
展开
-
openjudge每日推荐——碎纸机
#include <cstdio>#include <iostream>#include <cstring>#include <algorithm>using namespace std;int ans,num,m,vis[1000005],now[100],step[100],n;char s[100];void dfs(int pos,int sum,int cnt)//当前位置,原创 2016-11-03 16:09:10 · 389 阅读 · 0 评论 -
bzoj4562: [Haoi2016]食物链
Description如图所示为某生态系统的食物网示意图,据图回答第1小题 现在给你n个物种和m条能量流动关系,求其中的食物链条数。 物种的名称为从1到n编号 M条能量流动关系形如 a1 b1 a2 b2 a3 b3 …… am-1 bm-1 am bm 其中ai bi表示能量从物种ai流向物种bi,注意单独的一种孤立生物不算一条食物链 Input第一行两个整数n和m,接下来m原创 2017-08-16 14:41:54 · 424 阅读 · 0 评论 -
poj2386(BFS与DFS)
这个题就是求联通块 bfs代码#include <cstdio>#include <iostream>#include <cstring>#include <algorithm>#include <queue>using namespace std;char s[233][233];int n,m,ans = 0;bool vis[233][233];int dx[9]={0原创 2016-10-29 06:58:17 · 101 阅读 · 0 评论 -
poj2488 A Knight's Journey
题目大意是让你求出这个马不重复地跳完整个棋盘的字典序最小的路线,如果不能跳完整个棋盘,就输出impossible。 这是一道搜索题,马能走的有八个方位,想要使字典序最小,我们就先从字典序为A开头的地方搜,不行再搜B,这样搜到的第一个答案就是字典序最小的答案或者没有答案。 代码如下:#include <cstdio>#include <cstring>#include <iostream>#原创 2017-10-10 07:18:44 · 189 阅读 · 0 评论 -
codevs1215 迷宫
用dfs做的,还不嫌累的用if,当然bfs也很好做(代码很丑)。#include <cstdio>#include <cstring>#include <algorithm>#include <iostream>using namespace std;int n;bool flag;bool vis[50][50];char s[50][50];void dfs(int x,int原创 2017-02-08 21:24:12 · 389 阅读 · 0 评论 -
codevs1294 全排列
dfs入门题目#include <cstdio>#include <cstring>#include <algorithm>using namespace std;int n;int a[5000];bool vis[5555];void dfs(int x){ if(x > n) { for(int i = 1; i <= n; i ++)原创 2017-02-08 21:20:06 · 97 阅读 · 0 评论 -
codevs1295N皇后问题
#include <cstdio>#include <iostream>#include <algorithm>#include <cmath>#include <cstdlib>using namespace std;int n,tot = 0,ans = 0;int l[50];//第x行皇后的列数 void dfs(int x)//搜行 { if(x == n+1)原创 2016-10-28 07:25:51 · 307 阅读 · 0 评论 -
codevs1008选数
题目描述 Description 已知 n 个整数 x1,x2,…,xn,以及一个整数 k(k<n)。从 n 个整数中任选 k 个整数相加,可分别得到一系列的和。例如当 n=4,k=3,4 个整数分别为 3,7,12,19 时,可得全部的组合与它们的和为: 3+7+12=22 3+7+19=29 7+12+19=38 3+12+19=34。 现在,要求你计算出和为素数共有多少原创 2016-10-28 07:07:41 · 488 阅读 · 0 评论 -
poj1111 Image Perimeters
题目大意:求联通块的周长(八联通),每个块的周长为4。 我的做法是求出联通块的个数cnt,这样总的周长是cnt*4,但是有些块的某些边不能计算在内,有些块整个周长都不能计算在内,处理这个问题的方法是找一个块能够与多少块直接相连(最多有四个,上下左右),假设与x个块相连,再把每个块的x加起来,就是不需要计算在内的边数和,这样再用cnt*4减去就是真正的周长了。#include <cstdio>#i原创 2017-10-14 17:11:22 · 317 阅读 · 0 评论