当前位置: 首页 > news >正文

网站建设包含建设网站虚拟主机是啥意思

网站建设包含,建设网站虚拟主机是啥意思,有什么比较好的做简历的网站,网站建设优化服务资讯N 个皇后 问题描述 将n个皇后放在n大小的棋盘上#xff0c;没有两个皇后可以互相攻击。 最常见的 n 个皇后谜题是八个皇后谜题#xff0c;n 8#xff1a; 约束#xff1a; 使用 n 列和 n 行的棋盘。在棋盘上放置n个皇后。没有两个女王可以互相攻击。女王可以攻击同一水…N 个皇后 问题描述 将n个皇后放在n大小的棋盘上没有两个皇后可以互相攻击。 最常见的 n 个皇后谜题是八个皇后谜题n 8 约束 使用 n 列和 n 行的棋盘。在棋盘上放置n个皇后。没有两个女王可以互相攻击。女王可以攻击同一水平线、垂直线或对角线上的任何其他女王。 求解结果time limit 5s 问题大小 n搜索空间4256810^71610^193210^486410^11525610^616 域模型 Data AllArgsConstructor public class Column {private int index; } Data AllArgsConstructor public class Row {private int index; } Data AllArgsConstructor NoArgsConstructor PlanningEntity public class Queen {PlanningIdprivate Integer id;PlanningVariableprivate Column column;PlanningVariableprivate Row row;// 升序对角线索引左上到右下public int getAscendingDiagonalIndex() {return column.getIndex() row.getIndex();}// 降序对角线索引左下到右上public int getDescendingDiagonalIndex() {return column.getIndex() - row.getIndex();} } Data AllArgsConstructor NoArgsConstructor PlanningSolution public class NQueen {ValueRangeProviderProblemFactCollectionPropertyprivate ListColumn columnList;ValueRangeProviderProblemFactCollectionPropertyprivate ListRow rowList;PlanningEntityCollectionPropertyprivate ListQueen queenList;PlanningScoreprivate HardSoftScore score; } 例如 QueenColumnRowAscendingDiagonalIndexDescendingDiagonalIndexA1011 (**)-1B010 (*)1 (**)1C22240D030 (*)33 (*)(**)的皇后可以互相攻击 求解器约束提供者 public class NQueenConstraintProvider implements ConstraintProvider {Overridepublic Constraint[] defineConstraints(ConstraintFactory constraintFactory) {return new Constraint[]{// 列冲突columnConflict(constraintFactory),// 行冲突rowConflict(constraintFactory),// 升序对角线冲突ascendingDiagonalIndexConflict(constraintFactory),// 降序对角线冲突descendingDiagonalIndexConflict(constraintFactory),};}public Constraint columnConflict(ConstraintFactory constraintFactory) {return constraintFactory.forEach(Queen.class).join(Queen.class,Joiners.equal(Queen::getColumn),Joiners.lessThan(Queen::getId)).penalize(HardSoftScore.ONE_HARD).asConstraint(Column conflict);}public Constraint rowConflict(ConstraintFactory constraintFactory) {return constraintFactory.forEach(Queen.class).join(Queen.class,Joiners.equal(Queen::getRow),Joiners.lessThan(Queen::getId)).penalize(HardSoftScore.ONE_HARD).asConstraint(Row conflict);}public Constraint ascendingDiagonalIndexConflict(ConstraintFactory constraintFactory) {return constraintFactory.forEach(Queen.class).join(Queen.class,Joiners.equal(Queen::getAscendingDiagonalIndex),Joiners.lessThan(Queen::getId)).penalize(HardSoftScore.ONE_HARD).asConstraint(AscendingDiagonalIndex conflict);}public Constraint descendingDiagonalIndexConflict(ConstraintFactory constraintFactory) {return constraintFactory.forEach(Queen.class).join(Queen.class,Joiners.equal(Queen::getDescendingDiagonalIndex),Joiners.lessThan(Queen::getId)).penalize(HardSoftScore.ONE_HARD).asConstraint(DescendingDiagonalIndex conflict);} }应用 public class NQueenApp {public static void main(String[] args) {SolverFactoryNQueen solverFactory SolverFactory.create(new SolverConfig().withSolutionClass(NQueen.class).withEntityClasses(Queen.class).withConstraintProviderClass(NQueenConstraintProvider.class).withTerminationSpentLimit(Duration.ofSeconds(5)));NQueen problem generateDemoData();SolverNQueen solver solverFactory.buildSolver();NQueen solution solver.solve(problem);printTimetable(solution);}public static NQueen generateDemoData() {ListColumn columnList new ArrayList();ListRow rowList new ArrayList();ListQueen queenList new ArrayList();for (int i 0; i 8; i) {columnList.add(new Column(i));rowList.add(new Row(i));queenList.add(new Queen(i, null, null));}return new NQueen(columnList, rowList, queenList, null);}private static void printTimetable(NQueen nQueen) {System.out.println();ListColumn columnList nQueen.getColumnList();ListRow rowList nQueen.getRowList();ListQueen queenList nQueen.getQueenList();MapColumn, MapRow, ListQueen queenMap queenList.stream().filter(queen - queen.getColumn() ! null queen.getRow() ! null).collect(Collectors.groupingBy(Queen::getColumn, Collectors.groupingBy(Queen::getRow)));System.out.println(| | columnList.stream().map(room - String.format(%-3s, room.getIndex())).collect(Collectors.joining( | )) |);System.out.println(| -----|.repeat(columnList.size() 1));for (Column column : columnList) {ListListQueen cellList rowList.stream().map(row - {MapRow, ListQueen byRowMap queenMap.get(column);if (byRowMap null) {return Collections.QueenemptyList();}ListQueen cellQueenList byRowMap.get(row);if (cellQueenList null) {return Collections.QueenemptyList();}return cellQueenList;}).collect(Collectors.toList());System.out.println(| String.format(%-3s, column.getIndex()) | cellList.stream().map(cellQueenList - String.format(%-3s,cellQueenList.stream().map(queen - queen.getId().toString()).collect(Collectors.joining(, )))).collect(Collectors.joining( | )) |);System.out.println(| -----|.repeat(columnList.size() 1));}ListQueen unassignedQueens queenList.stream().filter(Queen - Queen.getColumn() null || Queen.getRow() null).collect(Collectors.toList());if (!unassignedQueens.isEmpty()) {System.out.println();System.out.println(Unassigned Queens);for (Queen Queen : unassignedQueens) {System.out.println( Queen.getColumn() - Queen.getRow());}}} }
http://www.pierceye.com/news/65548/

相关文章:

  • 西安搬家公司电话附近联系方式吉林seo快速排名
  • 南阳旅游网站建设现状石家庄效果图设计
  • 建设银行网站打不开站群优化公司
  • 团建网站天津市建设银行租房网站
  • 推广型网站建设机构怎样让google收录网站
  • 外贸网站有必要吗中山网站排名推广
  • wordpress列表显示文章网站seo排名优化方法
  • 网站被k查询在线培训考试系统
  • 网站虚拟空间过期武胜网站建设
  • 注册公司查名字哪个网站上海网站建设公司推荐排名
  • 哈尔滨优质官网建站企业商城二次开发
  • 济南市住房城乡建设网站网站返回顶部代码
  • 网站挂马处理百度快照深圳机场最新消息今天
  • 国家建设部门三类人员官方网站查看网站开发语言方法
  • 网站面试通知表格怎么做lamp和wordpress
  • 哪些网站做简历合适网络广告的形式有哪些
  • 福清网站商城建设各网站的网络联盟
  • 网站建设网络推广首选公司衡阳购物网站开发案例
  • php+ajax网站开发典型实例 pdf网站建设体会doc
  • 小程序开发外包该注意些什么2019做seo网站
  • 网站做跳转怎么做清远专业网页设计培训报价
  • 奉贤广州网站建设外贸手机网站建设
  • 网站菜单导航制作网站备案拍照要求
  • 网站建设详细合同范本网站维护入门教程
  • 买了个服务器 怎么做网站网站建设合同书
  • 如何寻找seo网站建设客户网站忘了怎么办
  • 高端网站建设公司价格局域网怎么搭建
  • 来年做那个网站致富ajax 网站模板
  • 做网站报价出名的wap版
  • 青岛市网站建设培训学校wordpress 主题 广告