POJ 1020 DFS
来源:互联网 发布:域名申请的步骤包括 编辑:程序博客网 时间:2024/05/24 04:39
#include <iostream>using namespace std;int cakesize;int cakenum[11];int col[40];int number;bool DFS( int fullnumber ){if( fullnumber == number){return true;}int min = 50;int prev;for( int i = 1; i <= cakesize; i++ ){if( col[i] < min ){min = col[i];prev = i;}}for( int size = 10; size >= 1; size-- ){if( !cakenum[size] ){continue;}if( cakesize >= col[prev] + size && prev + size - 1 <= cakesize ){int wide = 0;for( int i = prev; i <= size + prev - 1; i++ ){if( col[i] <= col[prev] ){wide++;continue;}break;}if( wide >= size ){cakenum[size]--;for( int i = prev; i <= size + prev - 1; i++ ){col[i] += size;}if( DFS( fullnumber + 1 ) ){return true;}cakenum[size]++;for( int i = prev; i <= size + prev - 1; i++ ){col[i] -= size;}}}}return false;}int main(){int t, temp;cin >> t;while( t-- ){cin >> cakesize >> number;memset( cakenum, 0, sizeof( cakenum ) );memset( col, 0, sizeof( col ) );for( int i = 1; i <= number; i++ ){cin >> temp;cakenum[temp]++;}if( DFS( 0 ) ){cout << "KHOOOOB!" << endl;}else{cout << "HUTUTU!" << endl;}}return 0;}
- poj 1020 DFS
- poj 1020 dessert DFS
- POJ 1020 DFS
- poj 1020dfs
- POJ 1010 1020 DFS+剪枝
- poj 1020 Anniversary Cake DFS
- POJ 1020 Anniversary Cake dfs
- poj 1020 Anniversary Cake (DFS)
- 【dfs】poj 1020 Anniversary Cake
- DFS POJ
- POJ DFS
- POJ 1020 Anniversary Cake 回溯DFS
- poj 3083 DFS+DFS+BFS
- POJ 1753 ID+DFS
- poj 1950 数字dfs
- poj 1816(trie+dfs)
- POJ 3107 Godfather(DFS)
- poj 3620(DFS)
- rsync同步艺术
- vs2008开发中的问题。以及解决方案
- NS2能量模型
- NS2中文手册之链路错误模型解释
- 判断浏览器类别
- POJ 1020 DFS
- WPF-常用布局容器
- Java - Http异步工具包(HttpClient实现)
- 《重构》读书笔记(二)——第一章 第一个重构案例
- UIscrollview ios
- JAVA中数组转化成list的方法
- Linux errno 错误对照表
- NS2中无线通信距离的计算
- poj 1222 关灯开灯问题 暴搜