- hdu1010 Tempter of the Bone —— dfs+奇偶性剪枝
DOLFAMINGO
DFS
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1010代码如下:#include//hdu1010dfs+奇偶性剪枝#includecharmap[10][10];intn,m,t,wall,si,sj,di,dj;intd[4][2]={{0,1},{0,-1},{1,0},{-1,0}};intdfs(inti,intj,intstep){if(
- DFS+剪枝
www555555555
算法
题目:hdu1010;预:charmap[10][10];intflag,Xnum,Sx,Sy,Dx,Dy;intdir[4][2]={{0,1},{0,-1},{1,0},{-1,0}};DFS(intx,inty,inttime):if(xn||ym)return;if(flag==1)return;if(x==Dx&&y==Dy&&time==t){flag=1;return;}//奇偶性剪
- 奇偶剪枝***&&***HDU1010 Tempter of the Bone
YouthDance
搜索
LinkHere:*****奇偶原理详解LinkHere:*****HDU1010奇偶剪枝描述奇偶剪枝是数据结构的搜索中,剪枝的一种特殊小技巧。现假设起点为(sx,sy),终点为(ex,ey),给定t步恰好走到终点,s|||+———e如图所示(“|”竖走,“—”横走,“+”转弯),易证abs(ex-sx)+abs(ey-sy)为此问题类中任意情况下,起点到终点的最短步数,记做step,此处step
- hdu1010奇偶剪枝
weixin_36957153
各大OJ上的刷题2018
借鉴思路题目根据地图,'S’为开始位置,‘D’为门的位置,’.'为空地,'X’为墙,不能经过,问:在指定的时间,是否能到达’门’的位置.注意:路不可以重复经过,时间也要刚好是t,不能少.思路:还是DFS,不能用BFS,因为BFS求的是最短路径,而此题的路径不一定最短.剪枝是关键,奇偶剪枝.奇偶剪枝原理:要理解奇偶剪枝,先了解一下曼哈顿距离,从一个点到达另外一个点的最短路径长度(时间)可以根据两点坐
- HDU1010
190_AON
ACM
题目链接:HDU1010一道DFS题目,程序种有两点需要注意:1.快速读入数据2.剪枝加速判断代码:#pragmaGCCoptimize(2)#pragmaGCCoptimize(3)#include#include#include#include#include#include#include#include#include#include#include#includeusingnamespa
- 深度优先搜索题集(迷宫类型)
weixin_30405421
数据结构与算法java
hdu1010(小狗逃迷宫)题意:在一个迷宫中有一只小狗和一根骨头,然后在T分钟的时候恰好迷宫的出口会打开,然后问小狗是否能在第T分钟的时候到达出口离开迷宫。小狗可以向上下左右四个方向移动,然后小狗不能走回头路,即已经走过了的路就不能再走,并且小狗只能一直走,不能停下来。奇偶剪枝!再用n*m-wall剪枝!(可以走的格子不能比t小)AC:#include#include#include#inclu
- HDU1010
weixin_44705665
深搜
小明做了一个很久很久的梦,醒来后他竟发现自己和朋友在一个摇摇欲坠的大棋盘上,他们必须得想尽一切办法逃离这里。经过长时间的打探,小明发现,自己所在的棋盘格子上有个机关,上面写着“你只有一次机会,出发后t秒大门会为你敞开”,而他自己所在的棋盘是大小为N*M的长方形,他可以向上下左右四个方向移动(不可走有障碍点)。棋盘中有一扇门。根据机关的提示,小明顿时明白了,他和朋友必须在第t秒到门口。而这一切,没有
- hdu1010
iteye_6233
#include#includeusingnamespacestd;intdi,dj;boolescape;inta,b,t;charstr[9][9];intdir[4][2]={{-1,0},{1,0},{0,-1},{0,1}};voidbfs(intsi,intsj,intcnt){if(sia||sj>b)return;inti;inttemp=t-cnt-abs(si-di)-abs(
- HDU 1242 -Rescue (双向BFS)&&( BFS+优先队列)
品尝这杯浓咖啡
搜索专题ZOJ&&HDU
题目链接:Rescue进度落下的太多了,哎╮(╯▽╰)╭,渣渣我总是埋怨进度比别人慢。。。为什么不试着改变一下捏。。。。开始以为是水题,想敲一下练手的,后来发现并不是一个简单的搜索题,BFS做肯定出事。。。后来发现题目里面也有坑题意是从r到a的最短距离,“.”相当时间单位1,“x”相当时间单位2,求最短时间HDU搜索课件上说,这题和HDU1010相似,刚开始并没有觉得像剪枝,就改用双向BFS0ms
- hdu1010(深搜 剪枝 回溯)
intial_Dream
搜索
这个题目我做的时候不是超时就是错误,自己是新手也一直不知道再怎么剪下去就参考了网上一大牛blog代码如下#include#include#include//hdu1010深搜优化剪枝intm,n,t;charmap[8][8];intd[4][2]={{-1,0},{1,0},{0,-1},{0,1}};intex,ey,sx,sy,ok;voiddfs(intx,inty,intcount){i
- HDU1010(DFS+剪枝)
朱清豪
HDU链接:TempteroftheBoneProblemDescription:Thedoggiefoundaboneinanancientmaze,whichfascinatedhimalot.However,whenhepickeditup,themazebegantoshake,andthedoggiecouldfeelthegroundsinking.Herealizedthattheb
- 寒假Day18-搜索
抓水母的派大星
今天做了一些搜索的题目,感觉我又迷了,我好菜也。。针对深搜:为什么需要标记记忆化搜索定义intdfs(),不需要标记一般搜索定义voiddfs(),需要book数组进行标记,搜索过后需要记得取消标记深搜剪枝:奇偶剪枝:HDU1010给出起点、终点、T,问小狗从起点走到终点能否恰好为T秒。这题限定了步数,(未必是bfs啊),利用奇偶剪枝才不会超时没有进行搜索的时候先判断全局T-[abs(ex-sx)
- HDU1010 --- Tempter of the Bone(dfs+剪枝)
qdu_lkc
小明做了一个很久很久的梦,醒来后他竟发现自己和朋友在一个摇摇欲坠的大棋盘上,他们必须得想尽一切办法逃离这里。经过长时间的打探,小明发现,自己所在的棋盘格子上有个机关,上面写着“你只有一次机会,出发后t秒大门会为你敞开”,而他自己所在的棋盘是大小为N*M的长方形,他可以向上下左右四个方向移动(不可走有障碍点)。棋盘中有一扇门。根据机关的提示,小明顿时明白了,他和朋友必须在第t秒到门口。而这一切,没有
- hdu1010 Tempter of the Bone 深搜dfs(论代码规范的重要性)
cloudy_happy
dfs深搜还需再写一遍
B-TempteroftheBoneHDU-1010Thedoggiefoundaboneinanancientmaze,whichfascinatedhimalot.However,whenhepickeditup,themazebegantoshake,andthedoggiecouldfeelthegroundsinking.Herealizedthatthebonewasatrap,and
- 【DFS入门例题】HDU1010,字典序
Othinus
算法竞赛试题分析算法实例
ProblemDescriptionThedoggiefoundaboneinanancientmaze,whichfascinatedhimalot.However,whenhepickeditup,themazebegantoshake,andthedoggiecouldfeelthegroundsinking.Herealizedthatthebonewasatrap,andhetriedd
- 【每周一题】2017.4.17 HDU1010
whucat
题目描述(我懒得翻译了,就是一个狗狗走迷宫问它在规定时间是否恰好能到达出口)Thedoggiefoundaboneinanancientmaze,whichfascinatedhimalot.However,whenhepickeditup,themazebegantoshake,andthedoggiecouldfeelthegroundsinking.Herealizedthatthebone
- 深度搜索hdu1010
UKey_
数据结构和算法
题目的大概意思是一只狗能不能在规定时间到达出口。如果可以,就输出”YES”,否则输出”NO”思路:一道深度搜索的题,如果直接暴力搜索会超时,所以需要剪枝。当起点和终点的最短距离(无视障碍物)比规定的时间大的时候肯定是满足不了的,这是其中一个剪枝。还有一个很关键的剪枝,我们判断图的每个点是奇数还是偶数,如果起点和终点都是奇数或者偶数,那么需要的时间(步数)应该是偶数步,否则是奇数步。比如:输入的图是
- ACM 搜索 hdu1010 Tempter of the Bone
Little_boy_z
ProblemDescriptionThedoggiefoundaboneinanancientmaze,whichfascinatedhimalot.However,whenhepickeditup,themazebegantoshake,andthedoggiecouldfeelthegroundsinking.Herealizedthatthebonewasatrap,andhetriedd
- hdu1010 扩展KMP求字符串最小循环节
jibancanyang
Problem:扩展kmp求字符串最小循环节Analyse:如果k是字符串的循环节,str.substr(0)==str.substr(k)这里恰好是最长前缀和后缀,用extkmp来正好./**********************jibancanyang***************************Author*:jibancanyang*CreatedTime*:六5/721:17:
- Tempter of the Bone —HDU1010(DFS+剪枝)
Jelly_acm
TempteroftheBoneTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):102071 AcceptedSubmission(s):27649ProblemDescriptionThedoggiefoundaboneinanancientmaze,
- HDU1010:Tempter of the Bone(DFS)
qq_27601815
DFS
ProblemDescriptionThedoggiefoundaboneinanancientmaze,whichfascinatedhimalot.However,whenhepickeditup,themazebegantoshake,andthedoggiecouldfeelthegroundsinking.Herealizedthatthebonewasatrap,andhetriedd
- HDU1010奇偶剪枝DFS
wuxiushu
ACMHDUDFS
TempteroftheBoneTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):101388 AcceptedSubmission(s):27470ProblemDescriptionThedoggiefoundaboneinanancientmaze,
- HDU1010:Tempter of the Bone(DFS)
yangkunpengD
奇偶剪枝深搜
ProblemDescriptionThedoggiefoundaboneinanancientmaze,whichfascinatedhimalot.However,whenhepickeditup,themazebegantoshake,andthedoggiecouldfeelthegroundsinking.Herealizedthatthebonewasatrap,andhetriedd
- hdu1010 dfs+路径剪枝
gcczhongduan
题意:用一个案例来解释445S.X...X...XD....在这个案例中,是一个4*4的地图。.表示可走的地方,X表示不可走的地方,S表示起始点,D表示目标点。没走到一个点之后。这个点就不可走啦。起始点的时间是0,那么问在时间刚好是5的时候能不能走到D,对于这个案例来说显然不能题解:这里学习到了一个剪枝:路径剪枝,是看了这个博客的解释,结合题目讲了两个剪枝,讲得非常具体:http://acm.hd
- HDU1010 Tempter of the Bone DFS
HandsomeHow
DFS
TempteroftheBoneTimeLimit:2000/1000MS(Java/Others) MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):99555 AcceptedSubmission(s):26979ProblemDescriptionThedoggiefoundaboneinanancientmaze,w
- hdu1010 dfs奇偶剪枝
winycg
DFS
ProblemDescriptionThedoggiefoundaboneinanancientmaze,whichfascinatedhimalot.However,whenhepickeditup,themazebegantoshake,andthedoggiecouldfeelthegroundsinking.Herealizedthatthebonewasatrap,andhetriedd
- hdu1010
wsn564533648
ACMDFS剪枝
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1010先说下这个题的坑: 1)要求是正好的时间到达,因为这个坑了很多次WA。。 2)减枝。一个是算最短路径都大于给定时间的,一个是奇偶性的问题,比如(0,0)点到了(1,1)要走偶数步,而到(0,1)要走奇数步,判断一下题目给的时间是否符合,还有一个是dfs写的时候是到达了门那个点就要退
- HDU 1010 Tempter of the Bone (搜索 + 奇偶剪枝)
Strokess
HDU1010深搜基础题,用到了奇偶剪枝。把map的奇偶性以01编号:010101 101010 010101 101010 010101 可以发现从0走一步一定走到1,从1走一步一定走到0。也就是说,如果当前的狗所在的坐标与D的坐标奇偶性不一样,那么狗需要走奇数步。同理,如果狗所在坐标与D的坐标奇偶性一样,那么狗需要走偶数步数。参考博客:http://www.cnblogs.com/ziyi--
- HDU1010(回溯剪枝)
H992109898
搜索算法
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1010一.题意:小狗从S出发,1s跳一个格子,Ts后恰好跳到D,不可以跳跳过的格子。问是否跳得出去。二.易错点:我要先发图!1.要记得剪枝。2.在判断是否到达门的时候,最好用坐标,因为用maze[i][j]=='D'的话。首先你要记得判断后再把它置为‘X’其次也是致命的,如果门那里回溯过一次的话,你会把
- HDU1010(回溯剪枝)
H992109898
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1010一.题意:小狗从S出发,1s跳一个格子,Ts后恰好跳到D,不可以跳跳过的格子。问是否跳得出去。二.易错点:我要先发图!1.要记得剪枝。2.在判断是否到达门的时候,最好用坐标,因为用maze[i][j]=='D'的话。首先你要记得判断后再把它置为‘X’ 其次也是致命的,如果门那里回溯过一次的话,你会
- 312个免费高速HTTP代理IP(能隐藏自己真实IP地址)
yangshangchuan
高速免费superwordHTTP代理
124.88.67.20:843
190.36.223.93:8080
117.147.221.38:8123
122.228.92.103:3128
183.247.211.159:8123
124.88.67.35:81
112.18.51.167:8123
218.28.96.39:3128
49.94.160.198:3128
183.20
- pull解析和json编码
百合不是茶
androidpull解析json
n.json文件:
[{name:java,lan:c++,age:17},{name:android,lan:java,age:8}]
pull.xml文件
<?xml version="1.0" encoding="utf-8"?>
<stu>
<name>java
- [能源与矿产]石油与地球生态系统
comsci
能源
按照苏联的科学界的说法,石油并非是远古的生物残骸的演变产物,而是一种可以由某些特殊地质结构和物理条件生产出来的东西,也就是说,石油是可以自增长的....
那么我们做一个猜想: 石油好像是地球的体液,我们地球具有自动产生石油的某种机制,只要我们不过量开采石油,并保护好
- 类与对象浅谈
沐刃青蛟
java基础
类,字面理解,便是同一种事物的总称,比如人类,是对世界上所有人的一个总称。而对象,便是类的具体化,实例化,是一个具体事物,比如张飞这个人,就是人类的一个对象。但要注意的是:张飞这个人是对象,而不是张飞,张飞只是他这个人的名字,是他的属性而已。而一个类中包含了属性和方法这两兄弟,他们分别用来描述对象的行为和性质(感觉应该是
- 新站开始被收录后,我们应该做什么?
IT独行者
PHPseo
新站开始被收录后,我们应该做什么?
百度终于开始收录自己的网站了,作为站长,你是不是觉得那一刻很有成就感呢,同时,你是不是又很茫然,不知道下一步该做什么了?至少我当初就是这样,在这里和大家一份分享一下新站收录后,我们要做哪些工作。
至于如何让百度快速收录自己的网站,可以参考我之前的帖子《新站让百
- oracle 连接碰到的问题
文强chu
oracle
Unable to find a java Virtual Machine--安装64位版Oracle11gR2后无法启动SQLDeveloper的解决方案
作者:草根IT网 来源:未知 人气:813标签:
导读:安装64位版Oracle11gR2后发现启动SQLDeveloper时弹出配置java.exe的路径,找到Oracle自带java.exe后产生的路径“C:\app\用户名\prod
- Swing中按ctrl键同时移动鼠标拖动组件(类中多借口共享同一数据)
小桔子
java继承swing接口监听
都知道java中类只能单继承,但可以实现多个接口,但我发现实现多个接口之后,多个接口却不能共享同一个数据,应用开发中想实现:当用户按着ctrl键时,可以用鼠标点击拖动组件,比如说文本框。
编写一个监听实现KeyListener,NouseListener,MouseMotionListener三个接口,重写方法。定义一个全局变量boolea
- linux常用的命令
aichenglong
linux常用命令
1 startx切换到图形化界面
2 man命令:查看帮助信息
man 需要查看的命令,man命令提供了大量的帮助信息,一般可以分成4个部分
name:对命令的简单说明
synopsis:命令的使用格式说明
description:命令的详细说明信息
options:命令的各项说明
3 date:显示时间
语法:date [OPTION]... [+FORMAT]
- eclipse内存优化
AILIKES
javaeclipsejvmjdk
一 基本说明 在JVM中,总体上分2块内存区,默认空余堆内存小于 40%时,JVM就会增大堆直到-Xmx的最大限制;空余堆内存大于70%时,JVM会减少堆直到-Xms的最小限制。 1)堆内存(Heap memory):堆是运行时数据区域,所有类实例和数组的内存均从此处分配,是Java代码可及的内存,是留给开发人
- 关键字的使用探讨
百合不是茶
关键字
//关键字的使用探讨/*访问关键词private 只能在本类中访问public 只能在本工程中访问protected 只能在包中和子类中访问默认的 只能在包中访问*//*final 类 方法 变量 final 类 不能被继承 final 方法 不能被子类覆盖,但可以继承 final 变量 只能有一次赋值,赋值后不能改变 final 不能用来修饰构造方法*///this()
- JS中定义对象的几种方式
bijian1013
js
1. 基于已有对象扩充其对象和方法(只适合于临时的生成一个对象):
<html>
<head>
<title>基于已有对象扩充其对象和方法(只适合于临时的生成一个对象)</title>
</head>
<script>
var obj = new Object();
- 表驱动法实例
bijian1013
java表驱动法TDD
获得月的天数是典型的直接访问驱动表方式的实例,下面我们来展示一下:
MonthDaysTest.java
package com.study.test;
import org.junit.Assert;
import org.junit.Test;
import com.study.MonthDays;
public class MonthDaysTest {
@T
- LInux启停重启常用服务器的脚本
bit1129
linux
启动,停止和重启常用服务器的Bash脚本,对于每个服务器,需要根据实际的安装路径做相应的修改
#! /bin/bash
Servers=(Apache2, Nginx, Resin, Tomcat, Couchbase, SVN, ActiveMQ, Mongo);
Ops=(Start, Stop, Restart);
currentDir=$(pwd);
echo
- 【HBase六】REST操作HBase
bit1129
hbase
HBase提供了REST风格的服务方便查看HBase集群的信息,以及执行增删改查操作
1. 启动和停止HBase REST 服务 1.1 启动REST服务
前台启动(默认端口号8080)
[hadoop@hadoop bin]$ ./hbase rest start
后台启动
hbase-daemon.sh start rest
启动时指定
- 大话zabbix 3.0设计假设
ronin47
What’s new in Zabbix 2.0?
去年开始使用Zabbix的时候,是1.8.X的版本,今年Zabbix已经跨入了2.0的时代。看了2.0的release notes,和performance相关的有下面几个:
:: Performance improvements::Trigger related da
- http错误码大全
byalias
http协议javaweb
响应码由三位十进制数字组成,它们出现在由HTTP服务器发送的响应的第一行。
响应码分五种类型,由它们的第一位数字表示:
1)1xx:信息,请求收到,继续处理
2)2xx:成功,行为被成功地接受、理解和采纳
3)3xx:重定向,为了完成请求,必须进一步执行的动作
4)4xx:客户端错误,请求包含语法错误或者请求无法实现
5)5xx:服务器错误,服务器不能实现一种明显无效的请求
- J2EE设计模式-Intercepting Filter
bylijinnan
java设计模式数据结构
Intercepting Filter类似于职责链模式
有两种实现
其中一种是Filter之间没有联系,全部Filter都存放在FilterChain中,由FilterChain来有序或无序地把把所有Filter调用一遍。没有用到链表这种数据结构。示例如下:
package com.ljn.filter.custom;
import java.util.ArrayList;
- 修改jboss端口
chicony
jboss
修改jboss端口
%JBOSS_HOME%\server\{服务实例名}\conf\bindingservice.beans\META-INF\bindings-jboss-beans.xml
中找到
<!-- The ports-default bindings are obtained by taking the base bindin
- c++ 用类模版实现数组类
CrazyMizzz
C++
最近c++学到数组类,写了代码将他实现,基本具有vector类的功能
#include<iostream>
#include<string>
#include<cassert>
using namespace std;
template<class T>
class Array
{
public:
//构造函数
- hadoop dfs.datanode.du.reserved 预留空间配置方法
daizj
hadoop预留空间
对于datanode配置预留空间的方法 为:在hdfs-site.xml添加如下配置
<property>
<name>dfs.datanode.du.reserved</name>
<value>10737418240</value>
 
- mysql远程访问的设置
dcj3sjt126com
mysql防火墙
第一步: 激活网络设置 你需要编辑mysql配置文件my.cnf. 通常状况,my.cnf放置于在以下目录: /etc/mysql/my.cnf (Debian linux) /etc/my.cnf (Red Hat Linux/Fedora Linux) /var/db/mysql/my.cnf (FreeBSD) 然后用vi编辑my.cnf,修改内容从以下行: [mysqld] 你所需要: 1
- ios 使用特定的popToViewController返回到相应的Controller
dcj3sjt126com
controller
1、取navigationCtroller中的Controllers
NSArray * ctrlArray = self.navigationController.viewControllers;
2、取出后,执行,
[self.navigationController popToViewController:[ctrlArray objectAtIndex:0] animated:YES
- Linux正则表达式和通配符的区别
eksliang
正则表达式通配符和正则表达式的区别通配符
转载请出自出处:http://eksliang.iteye.com/blog/1976579
首先得明白二者是截然不同的
通配符只能用在shell命令中,用来处理字符串的的匹配。
判断一个命令是否为bash shell(linux 默认的shell)的内置命令
type -t commad
返回结果含义
file 表示为外部命令
alias 表示该
- Ubuntu Mysql Install and CONF
gengzg
Install
http://www.navicat.com.cn/download/navicat-for-mysql
Step1: 下载Navicat ,网址:http://www.navicat.com/en/download/download.html
Step2:进入下载目录,解压压缩包:tar -zxvf navicat11_mysql_en.tar.gz
- 批处理,删除文件bat
huqiji
windowsdos
@echo off
::演示:删除指定路径下指定天数之前(以文件名中包含的日期字符串为准)的文件。
::如果演示结果无误,把del前面的echo去掉,即可实现真正删除。
::本例假设文件名中包含的日期字符串(比如:bak-2009-12-25.log)
rem 指定待删除文件的存放路径
set SrcDir=C:/Test/BatHome
rem 指定天数
set DaysAgo=1
- 跨浏览器兼容的HTML5视频音频播放器
天梯梦
html5
HTML5的video和audio标签是用来在网页中加入视频和音频的标签,在支持html5的浏览器中不需要预先加载Adobe Flash浏览器插件就能轻松快速的播放视频和音频文件。而html5media.js可以在不支持html5的浏览器上使video和audio标签生效。 How to enable <video> and <audio> tags in
- Bundle自定义数据传递
hm4123660
androidSerializable自定义数据传递BundleParcelable
我们都知道Bundle可能过put****()方法添加各种基本类型的数据,Intent也可以通过putExtras(Bundle)将数据添加进去,然后通过startActivity()跳到下一下Activity的时候就把数据也传到下一个Activity了。如传递一个字符串到下一个Activity
把数据放到Intent
- C#:异步编程和线程的使用(.NET 4.5 )
powertoolsteam
.net线程C#异步编程
异步编程和线程处理是并发或并行编程非常重要的功能特征。为了实现异步编程,可使用线程也可以不用。将异步与线程同时讲,将有助于我们更好的理解它们的特征。
本文中涉及关键知识点
1. 异步编程
2. 线程的使用
3. 基于任务的异步模式
4. 并行编程
5. 总结
异步编程
什么是异步操作?异步操作是指某些操作能够独立运行,不依赖主流程或主其他处理流程。通常情况下,C#程序
- spark 查看 job history 日志
Stark_Summer
日志sparkhistoryjob
SPARK_HOME/conf 下:
spark-defaults.conf 增加如下内容
spark.eventLog.enabled true spark.eventLog.dir hdfs://master:8020/var/log/spark spark.eventLog.compress true
spark-env.sh 增加如下内容
export SP
- SSH框架搭建
wangxiukai2015eye
springHibernatestruts
MyEclipse搭建SSH框架 Struts Spring Hibernate
1、new一个web project。
2、右键项目,为项目添加Struts支持。
选择Struts2 Core Libraries -<MyEclipes-Library>
点击Finish。src目录下多了struts