SDUT 2860-生日Party(BFS)
生日Party
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
题目描写叙述
输入
输出
演示样例输入
4
2
1 2
0 -2
-2 0
3
-1 -1 0
0 1 1
1 0 1
1 1 0
3
1 1 1
0 -1 -1
-1 0 -1
-1 -1 0
3
-1 -1 -1
0 -2 -2
-2 0 -2
-2 -2 0
演示样例输出
2
1
1
0
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <iostream>
#include <algorithm>
#include <cmath>
#include <queue>
using namespace std;
typedef struct node
{
int a[20],ans,x,top;//a数组里面放參加party的朋友的编号
};
int ma[20][20];
int fri[20],Max,n;
void bfs()
{
node t,v;
queue <node> Q;
t.top=0;t.ans=0;t.x=-1;
Q.push(t);
while(!Q.empty())
{
v=Q.front();Q.pop();
if(v.x==n-1)//每选完一轮更新一下最大值
{
if(Max<v.ans)
Max=v.ans;
continue;
}
//两个搜索方向,要么选此人,要么不选
t.x=v.x+1;//不选第i个人
t.ans=v.ans;
t.top=v.top;
for(int i=0;i<v.top;i++)
t.a[i]=v.a[i];
Q.push(t);//选第i个人
t.top=v.top+1;
t.a[v.top]=t.x;
t.ans=v.ans+fri[t.x];
for(int i=0;i<v.top;i++)
t.ans+=ma[t.a[i]][t.x];
Q.push(t);
}
}
int main()
{
int T,i,j;
cin>>T;
while(T--)
{
cin>>n;
for(i=0;i<n;i++)
cin>>fri[i];
for(i=0;i<n;i++)
for(j=0;j<n;j++)
cin>>ma[i][j];
Max=-1;
bfs();
if(Max<0)
cout<<"0"<<endl;
else
cout<<Max<<endl; }
return 0;
}
SDUT 2860-生日Party(BFS)的更多相关文章
- SDUT OJ 图练习-BFS-从起点到目标点的最短步数 (vector二维数组模拟邻接表+bfs , *【模板】 )
图练习-BFS-从起点到目标点的最短步数 Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 在古老的魔兽传说中,有两个军团,一个叫天 ...
- SDUT 1269 走迷宫(BFS)
点我看题目 题意:中文不详述. 思路 :上上上场比赛让一个BFS给虐了,上次比赛让一个三维的给废掉了.......所以急于从水题刷起......还因为数组开小了WA了5,6次 #include < ...
- SDUT 1124-飞跃荒野(三维BFS)
飞跃原野 Time Limit: 5000ms Memory limit: 65536K 有疑问?点这里^_^ 题目描写叙述 勇敢的法里奥出色的完毕了任务之后.正在迅速地向自己的基地撤退.但因为 ...
- SDUT 1157-小鼠迷宫问题(BFS&DFS)
小鼠迷宫问题 nid=24#time" title="C.C++.go.haskell.lua.pascal Time Limit1500ms Memory Limit 65536 ...
- SDUT OJ 数据结构实验之图论五:从起始点到目标点的最短步数(BFS)
数据结构实验之图论五:从起始点到目标点的最短步数(BFS) Time Limit: 1000 ms Memory Limit: 65536 KiB Submit Statistic Discuss P ...
- sdut oj 3058 路线冲突问题(BFS+记录路径算法,回溯路径 )
路线冲突问题 题目描述 给出一张地图,地图上有n个点,任意两点之间有且仅有一条路.点的编号从1到n. 现在兵团A要从s1到e1,兵团B要从s2到e2,问两条路线是否会有交点,若有则输出交点个数,否出输 ...
- SDUT OJ 1124 飞越原野 (三维BFS练习)
飞跃原野 nid=24#time" title="C.C++.go.haskell.lua.pascal Time Limit5000ms Memory Limit 65536K ...
- 基于邻接矩阵的广度优先搜索遍历(BFS)
题目:http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=2141&cid=1186 #include<stdio.h> #incl ...
- 基于邻接表的广度优先搜索遍历(bfs)
题目:http://acm.sdut.edu.cn/sdutoj/showproblem.php?pid=2142&cid=1186 #include<stdio.h> #incl ...
随机推荐
- Python网络编程——设定并获取默认的套接字超时时间
Sometimes,you need to manipulate the default values of certain properties of a socket library, for e ...
- ThinkPHP 3.1.2 模板的使用技巧
本节课大纲: 一.模板包含 <include file="完整模板文件名" /> <include file="./Tpl/default/Public ...
- mongodb 限制ip访问
<pre name="code" class="python">一.限制访问IP和端口 MongoDB可以限制只允许某一特定IP来访问,只要在启动时 ...
- cocos2d-x游戏开发系列教程-超级玛丽07-CMGameMap(五)-地图卷动
马里奥在平移的过程中,涉及到地图的卷动问题. 在这个游戏里,地图比窗口大,窗口只是显示了地图的一部分,因此马里奥在移动的时候,移动到一定位置之后要卷动地图,否则马里奥移动到窗口右边之后......那结 ...
- 详解Spring
Spring SSH框架中Struts2:是基于Web层,Hibernate:是基于持久化的,Spring:业务层,管理bean,它是一个容器,List,map, Set这里的内容,是适合已经学过了S ...
- [置顶] ios 360度旋转效果demo
demo功能:用UIimageView实现360度旋转效果. demo说明:iPhone6.1 测试成功.主要代码在:FVImageSequence.m中.在touchesMoved事件中,通过替换U ...
- 一入python深似海--浅拷贝与深拷贝
python中有一个模块copy,deepcopy函数用于深拷贝,copy函数用于浅拷贝. 要理解浅拷贝,必须先弄清楚python中的引用. 引用 Python中一切都是对象,变量中存放的是对象的引用 ...
- 密钥登录linux
一.linux 主机A登录linux主机B 在/etc/hosts文件下加入:(做硬解析) 192.168.1.60 u60 #设置u60为主机名 在节点A上创建RSA秘钥:(A上生成A主机密钥) # ...
- 在Update Panel 控件里面添加 File Upload 控件 上传文件
Detail Information:http://www.codeproject.com/Articles/482800/FileplusUploadplusinplusUpdateplusPane ...
- JS - 删除确认
<a href="javascript:if(confirm('确实要删除吗?'))location='<{:U('Admin/Update/deleteuserinfo', a ...