2017蓝桥杯java B组纸牌三角形
2017蓝桥杯java B组纸牌三角形
1.标题:纸牌三角形
A,2,3,4,5,6,7,8,9 共9张纸牌排成一个正三角形(A按1计算)。要求每个边的和相等。
下图就是一种排法
A
9 6
4 8
3 7 5 2
这样的排法可能会有很多。
如果考虑旋转、镜像后相同的算同一种,一共有多少种不同的排法呢?
请你计算并提交该数字。
注意:需要提交的是一个整数,不要提交任何多余内容。
思路:DFS+重复几率计算
这道题是典型的回溯应用,很适合使用递归。
- 原理
全排列(递归)(基于多少种不同的排法)
- DFS(深度优先搜索算法): 初步模板(简书大佬所著模板供参考)
3.DFS具体实现模板:
//DFS template
public static void DFS(char[] data,int k){//递归->构造相似性->构造参数//出口(条件和方法的参数有关)if(k==data.length-1){//输出for(int i=0;i<data.length;i++){System.out.print(data[i]+" "); }System.out.println();}//试探for(int i=k;i<data.length;i++){//k代表要与后面元素交换的当前位置{char temp;temp=data[k];data[k]=data[i];data[i]=temp;}//递归DFS(data,k+1);//回溯{char temp;temp=data[k];data[k]=data[i];data[i]=temp;}} }public static void main(String[] args) {// TODO Auto-generated method stubchar[] data= "ABCDEFG".toCharArray();//字符串转换为字符数组DFS(data,0);}
- 重复几率分析:
相同的一款:旋转3种*对称2种=6种
镜像:
答案
:
//纸牌三角形
public class 纸牌三角形 {static int count=0; public static void f(int[] arr,int k){if(k==arr.length-1){if(arr[0]+arr[1]+arr[2]+arr[3]==arr[3]+arr[4]+arr[5]+arr[6]&&arr[0]+arr[1]+arr[2]+arr[3]==arr[6]+arr[7]+arr[8]+arr[0]){count++;}}int temp = 0;for(int i = k;i<arr.length;i++){{temp = arr[k];arr[k]=arr[i];arr[i]=temp; }f(arr,k+1);{temp = arr[k];arr[k]=arr[i];arr[i]=temp;}}}public static void main(String[] args) {// TODO Auto-generated method stubint arr[] ={1,2,3,4,5,6,7,8,9};f(arr,0);System.out.println(count/6);}}
2017蓝桥杯java B组纸牌三角形相关推荐
- 2017蓝桥杯省赛---java---B---2(纸牌三角形)
题目描述 纸牌三角形 思路分析 全排列+特殊去重 ans/6 代码实现 package com.atguigu.TEST;class Main{public static int[] a={1,2,3 ...
- 2017年 第八届蓝桥杯 Java B组真题整理
2017年 第八届蓝桥杯 Java B组真题整理 1.购物单 小明刚刚找到工作,老板人很好,只是老板夫人很爱购物.老板忙的时候经常让小明帮忙到商场代为购物.小明很厌烦,但又不好推辞.这不,XX大促销又 ...
- 2017年 第8届 蓝桥杯 Java B组 省赛真题详解及总结
蓝桥杯 Java B组 省赛真题详解及小结汇总[2013年(第4届)~2020年(第11届)] 注意:部分代码及程序 源自 蓝桥杯 官网视频(历年真题解析) 郑未老师. 2013年 第04届 蓝桥杯 ...
- 2017年 第08届 蓝桥杯 Java B组 决赛真题详解及小结
蓝桥杯 Java B组 省赛决赛 真题详解及小结汇总[2013年(第4届)~2020年(第11届)] 第11届 蓝桥杯-第1.2次模拟(软件类)真题-(2020年3月.4月)-官方讲解视频 ...
- 2018年 第09届 蓝桥杯 Java B组 决赛真题详解及小结
蓝桥杯 Java B组 省赛决赛 真题详解及小结汇总[2013年(第4届)~2020年(第11届)] 第11届 蓝桥杯-第1.2次模拟(软件类)真题-(2020年3月.4月)-官方讲解视频 说明:大部 ...
- 2016年 第7届 蓝桥杯 Java B组 省赛解析及总结
蓝桥杯 Java B组 省赛决赛 真题详解及小结汇总[2013年(第4届)~2021年(第12届)] 第11届 蓝桥杯-第1.2次模拟(软件类)真题-(2020年3月.4月)-官方讲解视频 说明:部分 ...
- 2015年 第6届 蓝桥杯 Java B组 省赛解析及总结
蓝桥杯 Java B组 省赛决赛 真题详解及小结汇总[2013年(第4届)~2021年(第12届)] 第11届 蓝桥杯-第1.2次模拟(软件类)真题-(2020年3月.4月)-官方讲解视频 说明:部分 ...
- 2020年 第11届 蓝桥杯 Java B组 省赛真题详解及小结【第2场省赛 2020.10.17】
蓝桥杯 Java B组 省赛真题详解及小结汇总[2013年(第4届)~2020年(第11届)] 说明:大部分题解思路及程序代码 源自 蓝桥杯 官网视频(Java B组历年真题解析) -- 郑未老师. ...
- 2015年 第06届 蓝桥杯 Java B组 决赛真题详解及小结
蓝桥杯 Java B组 省赛决赛 真题详解及小结汇总[2013年(第4届)~2020年(第11届)] 第11届 蓝桥杯-第1.2次模拟(软件类)真题-(2020年3月.4月)-官方讲解视频 说明:大部 ...
最新文章
- 论文笔记:MobileNet v2
- mysql数据库雪崩_缓存与数据库一致性之三:缓存穿透、缓存雪崩、key重建方案...
- 计算机求职意向范文,自我评价与求职意向范文3篇
- 高级工程师职英语计算机,高级工程师要考英语吗
- 前端学习(2754):配置tabber
- 第七十期:IT技术人员的自我修养
- HTML的SEO(搜索引擎优化)标准
- [转]Cuda笔记【1】GPU计算DEMO
- java中Assert使用
- Ubuntu18.04忘记密码解决
- C# 实现批量下载抖音里的无水印视频
- 苹果手机在哪搜索测试版软件,如何在 beta 版软件上测试你的 App
- php 判断百度蜘蛛抓取,判断百度蜘蛛偷偷进行转移权重301,给新站提权
- 红米手机html文件,红米手机怎么传文件到电脑
- 华硕重装后进入bios_重装系统以后,开机自动进bios,进不了系统怎么办
- 感知机——鸢尾花 包含代码
- bilibili缓存视频的位置
- CENTOS7 安装eclipse应用
- 论文:Elastic Scheduling for Microservice Applications in Clouds (云环境下微服务应用的弹性调度)
- 基于pandas的粗糙集依赖度约简算法思路及实现