题目:五星填数

如【图1.png】的五星图案节点填上数字:1~12,除去7和11。
要求每条直线上数字和相等。

如图就是恰当的填法。

请你利用计算机搜索所有可能的填法有多少种。
注意:旋转或镜像后相同的算同一种填法。

请提交表示方案数目的整数,不要填写任何其它内容。

代码:

#include<iostream>

using namespace std;

int data[10] = {1,2,3,4,5,6,8,9,10,12};
int a[10];

bool jud();
int ways();

int main(int argc,char** argv){

cout << ways();
}

bool jud(){

int s1 = a[1] + a[2] + a[3] + a[4];
int s2 = a[4] + a[6] + a[7] + a[8];
int s3 = a[8] + a[5] + a[2] + a[0];
int s4 = a[0] + a[3] + a[6] + a[9];
int s5 = a[9] + a[7] + a[5] + a[1];

if(s1 == 24 && s2 == 24 && s3 == 24 && s4 == 24 && s5 == 24){

return true;
}

return false;
}

bool jud_temp(){

int a1 = 0,a2 = 0,a3 = 0,a4 = 0,a5 = 0,a6 = 0,a7 = 0,a8 = 0,a9 = 0,a10 = 0;

for(int i = 0;i < 10;i++){

if(a[i] == 1){

a1 = 1;

}else if(a[i] == 2){

a2 = 1;

}else if(a[i] == 3){

a3 = 1;

}else if(a[i] == 4){

a4 = 1;

}else if(a[i] == 5){

a5 = 1;

}else if(a[i] == 6){

a6 = 1;

}else if(a[i] == 8){

a7 = 1;

}else if(a[i] == 9){

a8 = 1;

}else if(a[i] == 10){

a9 = 1;

}else if(a[i] == 12){

a10 = 1;

}
}

if(a1 == 0 || a2 == 0 || a3 == 0 || a4 == 0 || a5 == 0 || a6 == 0 || a7 == 0 || a8 == 0 || a9 ==0 || a10 == 0){

return false;

}else{

return true;
}
}

int ways(){

int nums = 0;

for(int a1 = 0;a1 < 10;a1++){

for(int a2 = 0;a2 < 10;a2++){

for(int a3 = 0;a3 < 10;a3++){

for(int a4 = 0;a4 < 10;a4++){

for(int a5 = 0;a5 < 10;a5++){

for(int a6 = 0;a6 < 10;a6++){

for(int a7 = 0;a7 < 10;a7++){

for(int a8 = 0;a8 < 10;a8++){

for(int a9 = 0;a9 < 10;a9++){

for(int a10 = 0;a10 < 10;a10++){

a[0] = data[a1];
a[1] = data[a2];
a[2] = data[a3];
a[3] = data[a4];
a[4] = data[a5];
a[5] = data[a6];
a[6] = data[a7];
a[7] = data[a8];
a[8] = data[a9];
a[9] = data[a10];

if(jud_temp()){

if(jud()){

nums++;
}
}
}
}
}
}
}
}
}
}
}
}

return nums;

}



2015蓝桥杯五星填数(C++C组)的更多相关文章

  1. java实现第六届蓝桥杯五星填数

    五星填数 如[图1.png]的五星图案节点填上数字:1~12,除去7和11. 要求每条直线上数字和相等. 如图就是恰当的填法. 请你利用计算机搜索所有可能的填法有多少种. 注意:旋转或镜像后相同的算同 ...

  2. 第七届 蓝桥杯 方格填数 dfs

    如下的10个格子  填入0~9的数字.要求:连续的两个数字不能相邻. (左右.上下.对角都算相邻) 一共有多少种可能的填数方案? 请填写表示方案数目的整数. 注意:你提交的应该是一个整数,不要填写任何 ...

  3. 蓝桥杯 方格填数 DFS 全排列 next_permutation用法

    如下的10个格子(参看[图1.jpg]) 填入0~9的数字.要求:连续的两个数字不能相邻.(左右.上下.对角都算相邻) 一共有多少种可能的填数方案? 请填写表示方案数目的整数.注意:你提交的应该是一个 ...

  4. java实现第三届蓝桥杯方块填数

    方块填数 "数独"是当下炙手可热的智力游戏.一般认为它的起源是"拉丁方块",是大数学家欧拉于1783年发明的. 如图[1.jpg]所示:6x6的小格被分为6个部 ...

  5. java实现第七届蓝桥杯七星填数

    七星填数 如图[图1.png]所示. 在七角星的14个节点上填入1~14 的数字,不重复,不遗漏. 要求每条直线上的四个数字之和必须相等. 图中已经给出了3个数字. 请计算其它位置要填充的数字,答案唯 ...

  6. java实现第七届蓝桥杯方格填数

    方格填数 题目描述 如下的10个格子 +--+--+--+ | | | | +--+--+--+--+ | | | | | +--+--+--+--+ | | | | +--+--+--+ (如果显示 ...

  7. 【2015蓝桥杯省赛】C++ B组试题

    1.奖券数目 作答:52488,正确 #include <iostream> using namespace std; bool check(int x) { ] = { }; while ...

  8. 2015蓝桥杯分机号(C++C组)

    标题:分机号X老板脾气古怪,他们公司的电话分机号都是3位数,老板规定,所有号码必须是降序排列,且不能有重复的数位.比如:751,520,321 都满足要求,而,766,918,201 就不符合要求.现 ...

  9. 2016年第七届蓝桥杯C/C++程序设计本科B组省赛

    /* 2016年第七届蓝桥杯C/C++程序设计本科B组省赛 煤球数目(结果填空) 煤球数目 有一堆煤球,堆成三角棱锥形.具体: 第一层放1个, 第二层3个(排列成三角形), 第三层6个(排列成三角形) ...

随机推荐

  1. Java 并发同步工具(转)

    转自:https://www.jianshu.com/p/e80043ac4115 在 java 1.5 中,提供了一些非常有用的辅助类来帮助我们进行并发编程,比如 CountDownLatch,Cy ...

  2. http详解和分析

    1.http是什么? http 是一种超文本传输协议原名是这个Hypertext Transfer Protocol -- HTTP/1.1 可以百度查看http的RFC文档编号为RFC-2616 连 ...

  3. HTML每日学习笔记(3)

    7.17.2019 XHTML 1.XHTML与HTML的区别: XHTML 元素必须被正确地嵌套. XHTML 元素必须被关闭. 标签名必须用小写字母. XHTML 文档必须拥有根元素.(所有的 X ...

  4. Github Pages访问太慢?通过Netlify免费加速

    github pages vs netlify Github Pages为Github提供的一项静态站点托管服务,它直接从Github仓库获取静态文件进行发布,然后提供一个github.io的二级域名 ...

  5. Natas12 Writeup(文件上传漏洞)

    Natas12: 文件上传页面,源码如下: function genRandomString() { $length = 10; $characters = "0123456789abcde ...

  6. Windows下利用Chrome调试IOS设备页面

    本文介绍如何在 Windows 系统中连接 iOS设备 并对 Web 页面进行真机调试 必须前提 iOS设备.数据线 Node.js 环境 Chrome 浏览器 环境准备 安装Node环境 参考Nod ...

  7. JDBC(三)----Spring JDBC(JDBCTemplate)

    ##  Spring  JDBC *  Spring框架对JDBC的简单封装.提供了一个JDBCTemplate对象简化JDBC的开发 1.步骤 1.导入jar包 2.创建JDBCTemplate对象 ...

  8. GitLab私服在Ubuntu上搭建总结

    1.前期准备: sudo apt-get update sudo apt-get install -y curl openssh-server ca-certificates sudo apt-get ...

  9. DNN训练技巧(Tips for Training DNN)

    本博客是针对李宏毅教授在Youtube上上传的课程视频<ML Lecture 9-1:Tips for Training DNN>的学习笔记. 课程链接 Recipe of Deep Le ...

  10. Oracle中rownum的用法总结

      日期:2019/5/22 内容:oracle:数据库:rownum   数据库查询中,常用到"选取前X个"这样的问题,Oracle没有TOP关键字,这类问题都是通过rownum ...