weapon制作武器
weapon制作武器 (weapon.pas/c/cpp) 解题报告
制作武器weapon.pas/c/cpp) 背景
WZland的紧急避难所很快就建好了,WZland的居民们陆续地来到这个紧急避难所。但
WZland的许多居民不肯躲避,他们想要和外星人正面作战……
问题描述
在紧急避难所内,应广大居民的要求,WZland的国王决定成立一个自卫队,自卫队由
WZOI的JHB来担任领导。
JHB成为自卫队的领导之后,他的首要任务就是制作武器。WZland盛产矿石,每一种矿
石中都含有巨大的能量。当两块矿石相结合,会有一块消失而另一块保留下来,并且会产生
巨大能量。JHB想通过吸收这些能量,制造出一种能量化的武器,这个武器的杀伤力就是产
生的能量总和。
JHB找人弄到了若干块不同的矿石(每种矿石有且只有一种),他想用这些矿石制作出杀
伤力最大的武器。他把这些矿石交给WZOI的你,然后你需要制作出他需要的武器。当然一
个武器是不够的,JHB陆续给你送来了若干组矿石,你需要将每组的矿石都制作成武器。
输入格式
输入数据第一行包含一个整数T,表示有T组矿石;
对于每组矿石会有若干行来描述。
第一行包含一个整数N,表示当前组矿石的种类。
接下来N行每行N个整数,第i行的第j个数表示矿石i和矿石j结合,然后j消失i留下产生的能
量。
输出格式
输出数据有T行,每行一个整数S,分别表示矿石造出来的武器的最大杀伤力。
样例输入输出
Sample #1
weapon.in weapon.out
1 16
3
0 10 1
11 0 3
4 5 0
Sample #2
weapon.in weapon.out
2 4
2 22
0 4
1 0
3
0 20 1
12 0 1
1 10 0
样例解释
对于Sample #2 的第二个测试点,我们可以这样制作武器:1 和2 合并留下2,获得能量
12,3 和2 合并留下3,获得能量 10,总能量为22。
数据规模
对于30 的数据,2≤N≤10,T≤10;
对于50 的数据,2≤N≤10,T≤100;
对于100 的数据,2≤N≤10,T≤500;
对于100 的数据,保证S≤Maxlongint。
时间限制
1s
刷表大法好,状压大法好。
#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std ;
int t , n , links[][] , f[] ; void Init( )
{
scanf( "%d" , &n ) ;
for( int x = ; x <= n ; ++x )
for( int y = ; y <= n ; ++y )
scanf( "%d" , &links[x][y] ) ;
} void Solve( )
{
memset( f , , sizeof(f) ) ;
int ans = ;
for( int k = ; k <= ( << n ) - ; ++k )
for( int i = ; i <= n ; ++i )
for( int j = ; j <= n ; ++j )
{
if( i == j || ( k & ( <<( i - ) ) ) || ( k & ( << (j-) ) ) ) continue ;
f[k|(<<(i-))] = max( f[k|(<<(i-))] , f[k] + links[j][i] ) ;
ans = max( f[k|(<<(i-))] , ans ) ;
}
printf( "%d\n" , ans ) ;
} int main( )
{
freopen( "weapon.in" , "r" , stdin ) ;
freopen( "weapon.out" , "w" , stdout ) ;
scanf( "%d" , &t ) ;
while( t-- )
{
Init( ) ;
Solve( ) ;
}
return ;
}
weapon制作武器的更多相关文章
- Unity 武器拖尾效果
Pocket RPG Weapon Trails 武器拖尾效果 Asset Store地址:https://www.assetstore.unity3d.com/en/#!/content/2458 ...
- [Unity3D]Unity资料大全免费分享
都是网上找的连七八糟的资料了,整理好分享的,有学习资料,视频,源码,插件……等等 东西比较多,不是所有的都是你需要的,可以按 ctrl+F 来搜索你要的东西,如果有广告,不用理会,关掉就可以了,如 ...
- Unity3D插件分享
网上看到一个讲unity3D插件的,看着不错,转载过来. 本文汇总了近百个Unity3D插件,供大家参考下载. 2D_Toolkit_1.51 动画开发插件包 FingerGestures 触摸插件 ...
- Unity3D 200个插件免费分享
插件清单: 2D_Toolkit_1.51 动画开发插件包 FingerGestures 触摸插件 ORK_Okashi_RPG_Kit Unity3D角色扮演 ...
- Unity3d插件推荐
2D_Toolkit_1.51 动画开发插件包 FingerGestures 触摸插件 ORK_Okashi_RPG_Kit Unity3D角色扮演游戏开发工具包 uScript-Visual-Scr ...
- Unity项目 - DeathtrapDungeon死亡地牢
目录 游戏原型 项目演示 绘图资源 代码实现 注意事项 技术探讨 参考来源 游戏原型 死亡地牢是一款 2D-Roguelike 的地牢冒险游戏.手握利刃,斩杀怪物,在凶险的地牢内生存下去.但注意,敌人 ...
- CET4词汇
abandon vt.丢弃:放弃,抛弃 ability n.能力:能耐,本领 abnormal a.不正常的:变态的 aboard ad.在船(车)上:上船 abroad ad.(在)国外:到处 ab ...
- mud目录命令说明
目錄結構 以下列出的是 ES2 mudlib 根目錄下標準的子目錄結構,以及簡短的說明. /adm 儲存由系統管理者所管理的程式與資料檔. /std 儲存標準物件的程式碼. /obj 儲存通用物件 ...
- [Unity 设计模式]桥接模式(BridgePattern)
1.前言 继上一讲IOC模式的基础上继续本讲桥接模式,笔者感觉桥接模式是23种设计模式中桥接模式是最好用但也是最难理解的设计模式之一,23中设计模式就好武侠剧中一本武功秘籍,我们在工作过程中想要熟练运 ...
随机推荐
- VS Extension: Open Web Address with Visual Studio Browser
使用VS 打开链接 using Microsoft.VisualStudio.Shell; using Microsoft.VisualStudio.Shell.Interop; ... public ...
- Matlab心得及学习方法(不断更新)
Matlab心得及学习方法(不断更新) Matlab心得及学习方法(不断更新)P.S. 那些网上转载我的文章不写明出处的傻眼了吧?!老子更新了! 发现现在很多人(找工作的或者读博的)都想要学习或者正在 ...
- Seay工具分享
百度网盘:http://pan.baidu.com/share/home?uk=4045637737&view=share#category/type=0
- PHP之关闭网页错误提示
关闭PHP错误脚本提示是程序上线了必须做的一件事情,就是不管程序怎么报错我们都不能让错误日志在服务器上给大家看到,下面我来总结两种关闭PHP错误脚本提示的具体方法 最简单的办法就是直接在php程序代码 ...
- MemoryStream类
转自:http://www.cnblogs.com/kissdodog/archive/2013/01/20/2868864.html MemoryStream 是一个特例,MemoryStream中 ...
- HTTP错误代码详细介绍
HTTP 400 - 请求无效 HTTP 401.1 - 未授权:登录失败 HTTP 401.2 - 未授权:服务器配置问题导致登录失败 HTTP 401.3 - ACL 禁止访问资源 HTTP 40 ...
- 使用div+css制作简单导航 以及要注意问题
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 执行gem install dryrun错误
ERROR: While executing gem ... (Gem::FilePermissionError) You don't have write permissions for ...
- 转:Web service是什么?
作者: 阮一峰 我认为,下一代互联网软件将建立在Web service(也就是"云")的基础上. 我把学习笔记和学习心得,放到网志上,欢迎指正. 今天先写一个最基本的问题,Web ...
- 使用Xcode查找项目中的中文字符串
打开”Find Navigator” 切换搜索模式到 “Find > Regular Expression” 输入@"[^"]*[\u4E00-\u9FA5]+[^" ...