- Poj2362 Square ——搜索+剪枝
天翼之城*
dfs剪枝深度优先算法
Thisway题意:给你n个长度,问你这些长度是否能组成一个正方形题解:相当于要把n个球放到四个篮子里,每个篮子里的球的值之和=sum/4.这个时间复杂度不是很好算,所以在确定用搜索来做这道题的时候需要尽可能地剪枝。首先是四条边我们只需要搜三条即可。那么我们想让搜的数量尽可能小的话,需要将值从大到小排序,这样如果第一条边需要的长度>1的时候,第四条边需要的长度>=2.并且如果有一个样例会让排序后第
- 深度优先遍历:POJ2362木棍拼正方形
丨你得宠着我丨
算法C/C++深度优先算法c++
题目大意:给定一组不同长度的棍子,是否可以将它们首尾相连形成一个正方形?输入输入的第一行包含N,即测试用例的数量。每个测试用例都以整数4#include#includeusingnamespacestd;constintMax=25;boolvisit[Max];inta[Max];intside,m;boolDFS(intsum,intnum,intposition){if(num==3)ret
- POJ2362 Square
kalilili
DFS
题目描述:给定一系列枝条,判断他们是否可以收尾相连接成一个正方形。样例输入:第一行是样例个数N,以下各n行是的第一个数M是这个样例的枝条数,然后后面跟着各个枝条的长度。限制条件:4#include#include#includeusingnamespacestd;intmap[21]={0},stick[21],l,sum,N;booldfs(intn,ints,intlen){if(n==3)r
- poj2362
weixin_30622107
#include#include#includeintn,side;//numintstick[270];boolvis[270];intok;intcmp(constvoid*a,constvoid*b){return*(int*)b-*(int*)a;}voidDFS(intnum,intlen,ints){inti;if(num==3){ok=1;return;}if(ok==1)retur
- poj2362(小木棍问题的逆过程)
橘子唯一
模拟题深搜剪枝
SquareTimeLimit:3000MSMemoryLimit:65536KTotalSubmissions:18880Accepted:6549DescriptionGivenasetofsticksofvariouslengths,isitpossibletojointhemend-to-endtoformasquare?InputThefirstlineofinputcontainsN,
- HDU1518 DFS Square
wuxiushu
ACMHDUDFS
SquareTimeLimit:10000/5000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):12231 AcceptedSubmission(s):3897ProblemDescriptionGivenasetofsticksofvariouslengths,isitpossible
- HDU1518 & POJ2362 & ZOJ1909 Square(DFS,剪枝是关键呀)
hurmishine
SquareTimeLimit:10000/5000ms(Java/Other) MemoryLimit:65536/32768K(Java/Other)TotalSubmission(s):9 AcceptedSubmission(s):4ProblemDescriptionGivenasetofsticksofvariouslengths,isitpossibletojointheme
- POJ2362
ruojingzhang
DFS
挺简单的搜索,只是当时没能分析出题注意剪枝优化#include
#include
usingnamespacestd;
intn,m;
ints[22];
boolused[22];
intsum;
intlen;
booldfs(intstep,intpos,intl){
if(step==3){//剪枝之后找到三条边即可判true;
returntrue;
}
for(inti=pos;i
- POJ 2362 Square (搜索 + 剪枝)
Strokess
poj2362发现了两个可以剪枝的地方,不过看大神的博客说还有更多可以剪枝的地方,能到十多毫秒,给跪了。我能写成这样已经很满足了,在剪枝之前,还是要先把深搜练熟练。祥见代码。#include
#include
#include
#include
usingnamespacestd;
intM,b,flag;
intstick[30],book[30];
boolcmp(inta,intb){
re
- poj2362 Square DFS剪枝
EventQueue
算法搜索ACMpojDFS
SquareTimeLimit: 3000MS MemoryLimit: 65536KTotalSubmissions: 22779 Accepted: 7894DescriptionGivenasetofsticksofvariouslengths,isitpossibletojointhemend-to-endtoformasquare?InputThefirstlineofinputcont
- hdu1518 Square--DFS
LaoJiu_
C++DFS
原题链接: http://acm.hdu.edu.cn/showproblem.php?pid=1518一:原题内容ProblemDescriptionGivenasetofsticksofvariouslengths,isitpossibletojointhemend-to-endtoformasquare? InputThefirstlineofinputcontainsN,thenumber
- hdu1455Sticks【深搜剪枝】
zhou_yujia
搜索HDU
又是卡了3天的题,终于结束了,也是怪中己太不细心==和上一篇博客之中做的点击打开链接 hdu1518拼正方形类似,这个题开始就一直超时,开始以为是只带入了一个表示木棍长度的参数,根数每次都算导致的,然而发现了小木棍不一定长度不同,所以应该加一个while循环去掉之前算过不满足条件的,而且如果发现有最长的木棍情况下,最长的在深搜之中始终用不上,那么一定需要删除这种情况!犯二的地方:题解说while(
- POJ1011-Sticks
poj
转载请注明出处:優YoU http://user.qzone.qq.com/289065406/blog/1311647833
大致题意:
2011 POJ暑假集训题Problem E,POJ上有中文版
解题思路:
DFS+剪枝
POJ2362的强化版,重点在于剪枝
令InitLen
- HDU1518 DFS
HDU
题意:给定一些木棒
询问是否能够组成正方形
直接暴力 DFS View Code
1 #include<stdio.h>
2 #include<string.h>
3 #include<stdlib.h>
4 #include<algorithm>
5 using namespace std;
6 const i
- poj2362
poj
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int n,side;//num
int stick[270];
bool vis[270];
int ok;
int cmp(const void *a,const void *b){
return *(int *)b-*(in
- hdu1518 bjfuoj1042 zoj1909 poj2362 经典的搜索加剪枝
poj
bjfuoj的测试数据最水,用很简单的方法一下就过了,又调了好长时间,才过掉其它OJ上的这道题目~
/* * hdu1518/win.cpp * Created on: 2011-11-8 * Author : ben */#include <cstdio>#include <cstdlib>#include <cstring>#include <
- hdu1518深搜DFS
HDU
看队友ac了这个。。加上很久没写过深搜了。。手痒了。。遂拿之解闷~~
一开始超时。。玩命的超时(这次用的printf了)。。查之发现二逼了代码在已经搜过的位置重复搜了几次。。导致代码目测时间复杂度为o(n!)。。玩命啊。。改之。。wa。。顿时想起以前做过之一题目。。即在搜索过程中搜不成功还得回溯。。遂改方法。。ac~
#include<iostream>
#include<
- poj2362
poj
和1011拼木棒差不多,但是直接拿那个程序居然错了,就是在拼新的木棒的时候忘记判断第一个加入其中的小木棒是不是会超出要拼的木棒的长度。
View Code
#include
<
iostream
>
#include
<
cstdio
>
#include
&l
- HDU1518 Square
HDU
#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
int L,n;
int l[21];
bool vis[21];
int dfs(int nused,int left,int pos){
if(nused==0&&lef
- HDU 1455 Sticks(回溯,减枝很巧妙)
qq_25605637
题目地址:点击打开链接题意:小明拿来几根相同长度的棍子,然后把这些棍子截成好几节,问最后能拼成几根长度相同的棍子(要求这些棍子的长度最小)思路:和HDU1518相似,可以看本博客,那道题解写的比较详细,这不过这道题得在那道题上多加几个减枝才能AAC代码:#include
#include
#include
#include
#include
#include
#include
#include
#
- hdu1518 Square(dfs)
HDU
Square
Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 5987 Accepted Submission(s): 1916
Proble
- HDU1518 Square
HDU
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<stdlib.h>
#define max(a, b)(a > b ? a : b)
#define N 30
int a[N], vis[N], n, k, f;
void DFS(int s,
- HDU1518 Square
daniel_csdn
HDU1518Square一般的DFS是搜索到一条满足就行了,这种题目是搜索多条满足题意:用上所有的长度组合成四条相等的边长#include
#include
#include
usingnamespacestd;
inta[30],visited[30];
intn,W;
intflag;
voiddfs(intcur,intsum,intcnt){
if(cnt==4){flag=1;retu
- poj2362 Square
Kirito_Acmer
搜索
DescriptionGivenasetofsticksofvariouslengths,isitpossibletojointhemend-to-endtoformasquare?InputThefirstlineofinputcontainsN,thenumberoftestcases.Eachtestcasebeginswithaninteger4
#include
#include
#in
- hdu1518(Square)深搜+剪枝
u011479875
javaHDU深搜1518
点击打开杭电1518ProblemDescriptionGivenasetofsticksofvariouslengths,isitpossibletojointhemend-to-endtoformasquare? InputThefirstlineofinputcontainsN,thenumberoftestcases.Eachtestcasebeginswithaninteger40){
- POJ2362 Square
kalilili
题目描述:给定一系列枝条,判断他们是否可以收尾相连接成一个正方形。样例输入:第一行是样例个数N,以下各n行是的第一个数M是这个样例的枝条数,然后后面跟着各个枝条的长度。限制条件:4
#include
#include
#include
usingnamespacestd;
intmap[21]={0},stick[21],l,sum,N;
booldfs(intn,ints,intlen)
{
i
- HDU 1455——Sticks(神棍)
u014141559
这题跟HDU1518差不多附上测试数据~~64404030353526154040404040404040404040404040 40404342424110440404040404040404040404040 40253946401044040371817161540404040404040404640373210474425661235936271616372619142931585132
- HDU1518 & POJ2362 & ZOJ1909 Square
wangwenhao00
PS:经典的DFS+剪枝。当已经完成一条边的组合后,要从头开始搜索,如果还没组合成一条边则从当前下标位置继续搜索,如果访问过则找下一个满足条件的数字。剪枝技术可以参考POJ1011stick。#include
#include
#include
#include
usingnamespacestd;
constintmaxn=24;
boolcmp(inta,intb){
returna>b?tr
- HDU1518 DFS
guodongxiaren
ACMHDUDFShdu1518
传送门题意就是好多棍子,看能不能拼成正方形。主要注意的有几点:所有棍子都要用到,不能剩余输入已经保证大于4根棍子了。所以无需判断可能小于3根棍子的情况棍长的总数首先要是4的倍数,才能进行。否则直接输出“no”当前面前提满足以后,再满足3根棍子拼好,就完工了。最后一根一定能拼好。解法就是DFS------->深度优先搜索。DFS的思路就是一个图沿着一条路走下去,当走不下去的时候就回溯到上一结点再去走
- poj2362
u012303532
优化DFS剪枝
本题很早就看到过,一直拖到现在才做,本题就是一个排序+搜索+剪枝题,题意非常简单,说一下剪枝:1为了早点剪枝,将优先选择边长较长的棒子2棒子长度和是4的倍数,最长的棒子小于边长,棒子个数要大于等于43符合2的情况下,我搜到3个边长,也意味着可以构成。代码如下:#include
#include
#include
#include
usingnamespacestd;
inta[21];
intma
- html
周华华
html
js
1,数组的排列
var arr=[1,4,234,43,52,];
for(var x=0;x<arr.length;x++){
for(var y=x-1;y<arr.length;y++){
if(arr[x]<arr[y]){
&
- 【Struts2 四】Struts2拦截器
bit1129
struts2拦截器
Struts2框架是基于拦截器实现的,可以对某个Action进行拦截,然后某些逻辑处理,拦截器相当于AOP里面的环绕通知,即在Action方法的执行之前和之后根据需要添加相应的逻辑。事实上,即使struts.xml没有任何关于拦截器的配置,Struts2也会为我们添加一组默认的拦截器,最常见的是,请求参数自动绑定到Action对应的字段上。
Struts2中自定义拦截器的步骤是:
- make:cc 命令未找到解决方法
daizj
linux命令未知make cc
安装rz sz程序时,报下面错误:
[root@slave2 src]# make posix
cc -O -DPOSIX -DMD=2 rz.c -o rz
make: cc:命令未找到
make: *** [posix] 错误 127
系统:centos 6.6
环境:虚拟机
错误原因:系统未安装gcc,这个是由于在安
- Oracle之Job应用
周凡杨
oracle job
最近写服务,服务上线后,需要写一个定时执行的SQL脚本,清理并更新数据库表里的数据,应用到了Oracle 的 Job的相关知识。在此总结一下。
一:查看相关job信息
1、相关视图
dba_jobs
all_jobs
user_jobs
dba_jobs_running 包含正在运行
- 多线程机制
朱辉辉33
多线程
转至http://blog.csdn.net/lj70024/archive/2010/04/06/5455790.aspx
程序、进程和线程:
程序是一段静态的代码,它是应用程序执行的蓝本。进程是程序的一次动态执行过程,它对应了从代码加载、执行至执行完毕的一个完整过程,这个过程也是进程本身从产生、发展至消亡的过程。线程是比进程更小的单位,一个进程执行过程中可以产生多个线程,每个线程有自身的
- web报表工具FineReport使用中遇到的常见报错及解决办法(一)
老A不折腾
web报表finereportjava报表报表工具
FineReport使用中遇到的常见报错及解决办法(一)
这里写点抛砖引玉,希望大家能把自己整理的问题及解决方法晾出来,Mark一下,利人利己。
出现问题先搜一下文档上有没有,再看看度娘有没有,再看看论坛有没有。有报错要看日志。下面简单罗列下常见的问题,大多文档上都有提到的。
1、address pool is full:
含义:地址池满,连接数超过并发数上
- mysql rpm安装后没有my.cnf
林鹤霄
没有my.cnf
Linux下用rpm包安装的MySQL是不会安装/etc/my.cnf文件的,
至于为什么没有这个文件而MySQL却也能正常启动和作用,在这儿有两个说法,
第一种说法,my.cnf只是MySQL启动时的一个参数文件,可以没有它,这时MySQL会用内置的默认参数启动,
第二种说法,MySQL在启动时自动使用/usr/share/mysql目录下的my-medium.cnf文件,这种说法仅限于r
- Kindle Fire HDX root并安装谷歌服务框架之后仍无法登陆谷歌账号的问题
aigo
root
原文:http://kindlefireforkid.com/how-to-setup-a-google-account-on-amazon-fire-tablet/
Step 4: Run ADB command from your PC
On the PC, you need install Amazon Fire ADB driver and instal
- javascript 中var提升的典型实例
alxw4616
JavaScript
// 刚刚在书上看到的一个小问题,很有意思.大家一起思考下吧
myname = 'global';
var fn = function () {
console.log(myname); // undefined
var myname = 'local';
console.log(myname); // local
};
fn()
// 上述代码实际上等同于以下代码
m
- 定时器和获取时间的使用
百合不是茶
时间的转换定时器
定时器:定时创建任务在游戏设计的时候用的比较多
Timer();定时器
TImerTask();Timer的子类 由 Timer 安排为一次执行或重复执行的任务。
定时器类Timer在java.util包中。使用时,先实例化,然后使用实例的schedule(TimerTask task, long delay)方法,设定
- JDK1.5 Queue
bijian1013
javathreadjava多线程Queue
JDK1.5 Queue
LinkedList:
LinkedList不是同步的。如果多个线程同时访问列表,而其中至少一个线程从结构上修改了该列表,则它必须 保持外部同步。(结构修改指添加或删除一个或多个元素的任何操作;仅设置元素的值不是结构修改。)这一般通过对自然封装该列表的对象进行同步操作来完成。如果不存在这样的对象,则应该使用 Collections.synchronizedList 方
- http认证原理和https
bijian1013
httphttps
一.基础介绍
在URL前加https://前缀表明是用SSL加密的。 你的电脑与服务器之间收发的信息传输将更加安全。
Web服务器启用SSL需要获得一个服务器证书并将该证书与要使用SSL的服务器绑定。
http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后
- 【Java范型五】范型继承
bit1129
java
定义如下一个抽象的范型类,其中定义了两个范型参数,T1,T2
package com.tom.lang.generics;
public abstract class SuperGenerics<T1, T2> {
private T1 t1;
private T2 t2;
public abstract void doIt(T
- 【Nginx六】nginx.conf常用指令(Directive)
bit1129
Directive
1. worker_processes 8;
表示Nginx将启动8个工作者进程,通过ps -ef|grep nginx,会发现有8个Nginx Worker Process在运行
nobody 53879 118449 0 Apr22 ? 00:26:15 nginx: worker process
- lua 遍历Header头部
ronin47
lua header 遍历
local headers = ngx.req.get_headers()
ngx.say("headers begin", "<br/>")
ngx.say("Host : ", he
- java-32.通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小(两数组的差最小)。
bylijinnan
java
import java.util.Arrays;
public class MinSumASumB {
/**
* Q32.有两个序列a,b,大小都为n,序列元素的值任意整数,无序.
*
* 要求:通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小。
* 例如:
* int[] a = {100,99,98,1,2,3
- redis
开窍的石头
redis
在redis的redis.conf配置文件中找到# requirepass foobared
把它替换成requirepass 12356789 后边的12356789就是你的密码
打开redis客户端输入config get requirepass
返回
redis 127.0.0.1:6379> config get requirepass
1) "require
- [JAVA图像与图形]现有的GPU架构支持JAVA语言吗?
comsci
java语言
无论是opengl还是cuda,都是建立在C语言体系架构基础上的,在未来,图像图形处理业务快速发展,相关领域市场不断扩大的情况下,我们JAVA语言系统怎么从这么庞大,且还在不断扩大的市场上分到一块蛋糕,是值得每个JAVAER认真思考和行动的事情
- 安装ubuntu14.04登录后花屏了怎么办
cuiyadll
ubuntu
这个情况,一般属于显卡驱动问题。
可以先尝试安装显卡的官方闭源驱动。
按键盘三个键:CTRL + ALT + F1
进入终端,输入用户名和密码登录终端:
安装amd的显卡驱动
sudo
apt-get
install
fglrx
安装nvidia显卡驱动
sudo
ap
- SSL 与 数字证书 的基本概念和工作原理
darrenzhu
加密ssl证书密钥签名
SSL 与 数字证书 的基本概念和工作原理
http://www.linuxde.net/2012/03/8301.html
SSL握手协议的目的是或最终结果是让客户端和服务器拥有一个共同的密钥,握手协议本身是基于非对称加密机制的,之后就使用共同的密钥基于对称加密机制进行信息交换。
http://www.ibm.com/developerworks/cn/webspher
- Ubuntu设置ip的步骤
dcj3sjt126com
ubuntu
在单位的一台机器完全装了Ubuntu Server,但回家只能在XP上VM一个,装的时候网卡是DHCP的,用ifconfig查了一下ip是192.168.92.128,可以ping通。
转载不是错:
Ubuntu命令行修改网络配置方法
/etc/network/interfaces打开后里面可设置DHCP或手动设置静态ip。前面auto eth0,让网卡开机自动挂载.
1. 以D
- php包管理工具推荐
dcj3sjt126com
PHPComposer
http://www.phpcomposer.com/
Composer是 PHP 用来管理依赖(dependency)关系的工具。你可以在自己的项目中声明所依赖的外部工具库(libraries),Composer 会帮你安装这些依赖的库文件。
中文文档
入门指南
下载
安装包列表
Composer 中国镜像
- Gson使用四(TypeAdapter)
eksliang
jsongsonGson自定义转换器gsonTypeAdapter
转载请出自出处:http://eksliang.iteye.com/blog/2175595 一.概述
Gson的TypeAapter可以理解成自定义序列化和返序列化 二、应用场景举例
例如我们通常去注册时(那些外国网站),会让我们输入firstName,lastName,但是转到我们都
- JQM控件之Navbar和Tabs
gundumw100
htmlxmlcss
在JQM中使用导航栏Navbar是简单的。
只需要将data-role="navbar"赋给div即可:
<div data-role="navbar">
<ul>
<li><a href="#" class="ui-btn-active&qu
- 利用归并排序算法对大文件进行排序
iwindyforest
java归并排序大文件分治法Merge sort
归并排序算法介绍,请参照Wikipeida
zh.wikipedia.org/wiki/%E5%BD%92%E5%B9%B6%E6%8E%92%E5%BA%8F
基本思想:
大文件分割成行数相等的两个子文件,递归(归并排序)两个子文件,直到递归到分割成的子文件低于限制行数
低于限制行数的子文件直接排序
两个排序好的子文件归并到父文件
直到最后所有排序好的父文件归并到输入
- iOS UIWebView URL拦截
啸笑天
UIWebView
本文译者:candeladiao,原文:URL filtering for UIWebView on the iPhone说明:译者在做app开发时,因为页面的javascript文件比较大导致加载速度很慢,所以想把javascript文件打包在app里,当UIWebView需要加载该脚本时就从app本地读取,但UIWebView并不支持加载本地资源。最后从下文中找到了解决方法,第一次翻译,难免有
- 索引的碎片整理SQL语句
macroli
sql
SET NOCOUNT ON
DECLARE @tablename VARCHAR (128)
DECLARE @execstr VARCHAR (255)
DECLARE @objectid INT
DECLARE @indexid INT
DECLARE @frag DECIMAL
DECLARE @maxfrag DECIMAL
--设置最大允许的碎片数量,超过则对索引进行碎片
- Angularjs同步操作http请求with $promise
qiaolevip
每天进步一点点学习永无止境AngularJS纵观千象
// Define a factory
app.factory('profilePromise', ['$q', 'AccountService', function($q, AccountService) {
var deferred = $q.defer();
AccountService.getProfile().then(function(res) {
- hibernate联合查询问题
sxj19881213
sqlHibernateHQL联合查询
最近在用hibernate做项目,遇到了联合查询的问题,以及联合查询中的N+1问题。
针对无外键关联的联合查询,我做了HQL和SQL的实验,希望能帮助到大家。(我使用的版本是hibernate3.3.2)
1 几个常识:
(1)hql中的几种join查询,只有在外键关联、并且作了相应配置时才能使用。
(2)hql的默认查询策略,在进行联合查询时,会产
- struts2.xml
wuai
struts
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache