第七届蓝桥杯java b组难吗

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第七届蓝桥杯java b组难吗相关的知识,希望对你有一定的参考价值。

第一、楼下说的不对。本一也是可以选择保A的,比如我们学校就是,我们老师给我们报的是B。A组的题目基本上有4道左右和B组一样,其他比B组难点。
第二、这不是歧视,是为了给更多人机会,如果都报A的话,基本上晋级的都是重点学校了。
参考技术A 难啊,参加了血崩,全是各种算法的,然后程序填空全靠猜测

第七届蓝桥杯大赛个人赛省赛(软件类)B组

3.凑算式


     B      DEF
A + --- + ------- = 10
     C      GHI
     
(如果显示有问题,可以参见【图1.jpg】)
   
这个算式中A~I代表1~9的数字,不同的字母代表不同的数字。

比如:
6+8/3+952/714 就是一种解法,
5+3/1+972/486 是另一种解法。

这个算式一共有多少种解法?

注意:你提交应该是个整数,不要填写任何多余的内容或说明性文字。

 

这道有点坑吧,尤其对于我这种看题不仔细的,看到题是想着"/"这个运算是整数的,啪啪敲了代码一算两万多,想着也没毛病,可是答案说是29,找了半天看样例时发现了这里取商的值是小数......

#include <iostream>
#include <stdlib.h>
#include <string.h>
#include <math.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int vis[100];
int a[100], cnt;

void DFS(int t)
{
    if(t==9)
    {
        int f=1;
        for(int i=0; i<=8; i++)
        {
            if(a[i]==0)
            f=0;
        }
        if(f==1&&fabs((1.0*a[0]+1.0*a[1]/a[2]+1.0*(a[3]*100+a[4]*10+a[5])/(a[6]*100+a[7]*10+a[8]))-10)<1e-10)
        {
            cnt++;
        }
        return;
    }
    for(int i=1; i<=9; i++)
    {
        if(!vis[i])
        {
            a[t]=i;
            vis[i]=1;
            DFS(t+1);
            vis[i]=0;
            a[t]=0;
        }
    }
}

int main(int argc, char** argv) {
    cnt=0;
    for(int i=1; i<=9; i++)
    {
        memset(vis, 0, sizeof(vis));
        memset(a, 0, sizeof(a));
        vis[i]=1;
        a[0]=i;
        DFS(1);
    }
    printf("%d\\n", cnt);
    return 0;
}

 

以上是关于第七届蓝桥杯java b组难吗的主要内容,如果未能解决你的问题,请参考以下文章

java算法 第七届 蓝桥杯B组(题+答案) 7.剪邮票

java算法 第七届 蓝桥杯B组(题+答案) 8.四平方和

算法笔记_212:第七届蓝桥杯软件类决赛真题(Java语言B组)

算法笔记_123:蓝桥杯第七届省赛(Java语言B组部分习题)试题解答

第七届蓝桥杯CC++B组省赛题目——方格填数

第七届蓝桥杯本科B组省赛