打气球dfs
来源:互联网 发布:c语言程序编程教学 编辑:程序博客网 时间:2024/05/09 20:48
package xj;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class DaQiqiu {
static int T, N, maxsum;
static int data[];
static int num[];
static boolean used[];
public static void main(String[] args) throws FileNotFoundException {
/* Scanner sc=new Scanner(System.in); */
Scanner sc = new Scanner(new File("src/DaQiqiu"));
T = sc.nextInt();
for (int t = 0; t < T; t++) {
N = sc.nextInt();
data = new int[N];
used = new boolean[N];
num=new int[N];
for (int i = 0; i < N; i++) {
data[i] = sc.nextInt();
}
maxsum = 0;
dfs(0,0);
/*
* for (int i = 0; i < N; i++) { System.out.print(" "+data[i]); }
*/
System.out.println(maxsum);
}
}
private static void dfs(int step, int sum) {
if (step == N) {
if (maxsum < sum) {
maxsum = sum;
}
return;
}
for (int i = 0; i < N; i++) {
if (!used[i]) {
int l = -1;
int r = -1;
int t = sum;
// you
for (int j = i + 1; j < N; j++) {//这里一开始弄混淆了i和step
if (!used[j]) {
r = j;
break;
}
}
// zuo
for (int j = i - 1; j >= 0; j--) {
if (!used[j]) {
l = j;
break;
}
}
//
if (l == -1 && r != -1) {
sum += data[r];
}
//
if (l != -1 && r == -1) {
sum += data[l];
}
//
if (l != -1 && r != -1) {
sum += data[l] * data[r];
}
//
if (l == -1 && r == -1) {
sum += data[i];
}
used[i] = true;
dfs(step + 1, sum);
used[i] = false;
sum = t;
}
}
}
}
//input
7
5
3 10 1 2 5
7
12 48 28 21 67 75 85
6
2 3 4 6 7 1
4
1 2 3 4
10
1 2 1 4 5 6 7 8 9 10
5
1 2 3 4 5
3
2 8 3
//output
100
16057
84
20
360
40
24
- 打气球dfs
- 打气球游戏
- 打气球 数学期望
- 打气球(记忆化dp+数学期望)
- 气球
- 用html5做了一个打气球小游戏
- 【32】css跟js实现打气球的游戏
- 前端案例-原生javascript开发打气球小游戏
- DFS+打表
- hdu2510 dfs打表
- hdu2510 dfs打表
- HDU-4706 dfs打表
- sgu157 Patience DFS打表
- HDU2212 DFS【水题】【打表】
- hdu 5676 dfs打表
- 期待第一款游戏打气球(shoot balloons)App store审核通过
- HDU4542(反素数+DFS+暴力打表)
- N皇后问题(hdu2553,dfs+打表)
- 修改ubuntu系统的时间
- 《java数据结构》--链表
- Android实现EditText文本颜色渐变
- 成员变量和局部变量的区别
- OC是动态语言体现在什么方面
- 打气球dfs
- android中如何设计触摸屏驱动touch screen driver
- [LeetCode]9. Palindrome Number
- LINUX操作系统VIM的安装和配置
- Android Launcher详解
- Lombok入门
- spring中配置log4j
- 7对数字
- Intersection of Two Linked Lists