2015蓝桥杯五星填数(C++C组)
题目:五星填数
如【图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组)的更多相关文章
- java实现第六届蓝桥杯五星填数
五星填数 如[图1.png]的五星图案节点填上数字:1~12,除去7和11. 要求每条直线上数字和相等. 如图就是恰当的填法. 请你利用计算机搜索所有可能的填法有多少种. 注意:旋转或镜像后相同的算同 ...
- 第七届 蓝桥杯 方格填数 dfs
如下的10个格子 填入0~9的数字.要求:连续的两个数字不能相邻. (左右.上下.对角都算相邻) 一共有多少种可能的填数方案? 请填写表示方案数目的整数. 注意:你提交的应该是一个整数,不要填写任何 ...
- 蓝桥杯 方格填数 DFS 全排列 next_permutation用法
如下的10个格子(参看[图1.jpg]) 填入0~9的数字.要求:连续的两个数字不能相邻.(左右.上下.对角都算相邻) 一共有多少种可能的填数方案? 请填写表示方案数目的整数.注意:你提交的应该是一个 ...
- java实现第三届蓝桥杯方块填数
方块填数 "数独"是当下炙手可热的智力游戏.一般认为它的起源是"拉丁方块",是大数学家欧拉于1783年发明的. 如图[1.jpg]所示:6x6的小格被分为6个部 ...
- java实现第七届蓝桥杯七星填数
七星填数 如图[图1.png]所示. 在七角星的14个节点上填入1~14 的数字,不重复,不遗漏. 要求每条直线上的四个数字之和必须相等. 图中已经给出了3个数字. 请计算其它位置要填充的数字,答案唯 ...
- java实现第七届蓝桥杯方格填数
方格填数 题目描述 如下的10个格子 +--+--+--+ | | | | +--+--+--+--+ | | | | | +--+--+--+--+ | | | | +--+--+--+ (如果显示 ...
- 【2015蓝桥杯省赛】C++ B组试题
1.奖券数目 作答:52488,正确 #include <iostream> using namespace std; bool check(int x) { ] = { }; while ...
- 2015蓝桥杯分机号(C++C组)
标题:分机号X老板脾气古怪,他们公司的电话分机号都是3位数,老板规定,所有号码必须是降序排列,且不能有重复的数位.比如:751,520,321 都满足要求,而,766,918,201 就不符合要求.现 ...
- 2016年第七届蓝桥杯C/C++程序设计本科B组省赛
/* 2016年第七届蓝桥杯C/C++程序设计本科B组省赛 煤球数目(结果填空) 煤球数目 有一堆煤球,堆成三角棱锥形.具体: 第一层放1个, 第二层3个(排列成三角形), 第三层6个(排列成三角形) ...
随机推荐
- 3.后台配置、环境变量、日志、异常处理、二次封装Response、路由组件
目录 环境变量 封装logger 封装项目异常处理 二次封装Response模块 路由组件配置 环境变量 dev.py # 环境变量操作:小luffyapiBASE_DIR与apps文件夹都要添加到环 ...
- Asp.Net Core 中IdentityServer4 授权原理及刷新Token的应用
一.前言 上面分享了IdentityServer4 两篇系列文章,核心主题主要是密码授权模式及自定义授权模式,但是仅仅是分享了这两种模式的使用,这篇文章进一步来分享IdentityServer4的授权 ...
- Python - 函数形参之必填参数、缺省参数、可变参数、关键字参数的详细使用
Python函数形参 必传参数:平时最常用的,必传确定数量的参数 缺省参数:在调用函数时可以传也可以不传,如果不传将使用默认值 可变参数:可变长度参数 关键字参数:长度可变,但是需要以kv对形式传参 ...
- ATOMac - 基于Python的Mac应用Ui自动化库
ATOMacTest 一.缘 起 近期工作需要对一款Mac端应用实现常用功能的自动化操作,同事推荐ATOMac这款工具,这几天简单研究了下,同时也发现现网介绍ATOMac的资料非常有限,故在此记录下A ...
- 【Weiss】【第03章】练习3.7:有序多项式相乘
[练习3.7] 编写一个函数将两个多项式相乘,用一个链表实现.你必须保证输出的多项式按幂次排列,并且任意幂次最多只有一项. a.给出以O(M2N2)时间求解该问题的算法. b.写一个以O(M2N)时间 ...
- Kafka的面试题
1.Kafka的设计是什么样的呢?Kafka将消息以topic为单位进行归纳将向Kafka topic发布消息的程序成为producers.将预订topics并消费消息的程序成为consumer.Ka ...
- 基于Docker搭建Nginx图片服务器
前言 一般开发中,都会把图片上传到一个目录,然后将目录和文件名拼接存储在数据库中,但是,这种方法如果没弄好的话可能有一定的缺陷. 若项目搬迁,即时这台服务器本身还在用,存放在服务器的跟项目相关的图片也 ...
- 渗透测试-http协议简介
HTTP协议 超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议.所有的WWW文件都 必须遵守这个标准.设计HTTP最初的目的是为了 ...
- Effective python(五):内置模块
1,考虑使用contextlib和with语句改写可复用的try/finally代码 with lock:print('lock is held')相当于try:print('lock is held ...
- 欢乐C++ —— 2. 深复制与浅复制
1. 简述 通俗点讲,深复制与浅复制一般对指针而言, 深复制复制指针所指向的内容, 浅复制复制指针的值. 2. 举例 栗子: 当我们有现在有指针A指向一块数据,和指针B. 深复制- ...