2013年蓝桥杯真题[通俗易懂]

  1.某人年龄的立方是4位数,年龄的四次方是6位数,这10位数包含0到9,每个恰好出现一次,求他年龄多大publicclassOne{publicstaticvoidmain(String[]args){for(inti=10;i<100;i++){inti1=i*i*i;int…

大家好,又见面了,我是你们的朋友全栈君。

  1. 某人年龄的立方是4位数,年龄的四次方是6位数,这10位数包含0到9,每个恰好出现一次,求他年龄多大

public class One {
 public static void main(String[] args) {
     for (int i = 10; i < 100; i++) {
        int i1 = i*i*i;
        int i2 = i1*i;
        String s1 = i1+"";
        String s2 = i2+"";
        if(s1.length()==4&&s2.length()==6&&check(s1+s2)) {
            System.out.println(i);
            break;
        }
    } 
 }
//验证十位包含0到9
private static boolean check(String s) {
    //去重
    Set<Character> set = new HashSet<Character>();
    for(int i=0;i<s.length();i++) {
        set.add(s.charAt(i));
    }
    return set.size()==10;
}
}    

 

  2.  1 9 4 9四位数随意摆放它们的先后顺序,能组成多少个4位的素数

//重复数据的全排列+检查
public class One{

    static void f(int[] arr, int k) {
        if (k == 4)// 前面的已经确定,k为数组下标
            check(arr);
        for (int i = k; i < 4; i++) {
            // 交换
            int t = arr[k];
            arr[k] = arr[i];
            arr[i] = t;
            // 递归调用
            f(arr, k + 1);
            // 交换回来
            t = arr[k];
            arr[k] = arr[i];
            arr[i] = t;
        }
    }

    // 去重
    static Set<Integer> set = new HashSet<Integer>();

    // 验证十位数包含0到9
    private static void check(int[] arr) {
        // TODO Auto-generated method stub
        boolean flag = true;
        int x = arr[0] * 1000 + arr[1] * 100 + arr[2] * 10 + arr[3];
        for (int i = 2; i <= Math.sqrt(x); i++) {
            // 被二整除不是素数
            if (x % i == 0) {
                flag = false;
                break;
            }
        }
        // 素数添加到集合中
        if (flag) {
            set.add(x);
        }

    }

    public static void main(String[] args) {
        int arr[] = { 1, 9, 4, 9 };
        f(arr, 0);
        System.out.println(set.size());
    }

}
    

 

  3. 假设 a b c d e 代表1-9不同的5个数字(注意是各不相同的数字,且不含0),能满足 ab * cde = adb * ce 这样的算式一共多少种?

public class One {
    public static void main(String[] args) {
        int count = 0;
        //a,b,c,d,e都不等于零且它们不相等
        for (int a = 1; a < 10; a++) {
            for (int b = 1; b < 10; b++) {
                if (b != a) {
                    for (int c = 1; c < 10; c++) {
                        if (c != a && c != b) {
                            for (int d = 1; d < 10; d++) {
                                if (d != a && d != b && d != c) {
                                    for (int e = 1; e < 10; e++) {
                                        if (e != a && e != b && e != c && e != d) {
                                            if ((a * 10 + b) * (c * 100 + d * 10 + e) == (a * 100 + d * 10 + b)
                                                    * (c * 10 + e)) {
                                                count++;
                                                System.out.printf(
                                                        "(%d*10+%d)*(%d*100+%d*10+%d)==(%d*100+%d*10+%d)*(%d*10+%d)==%d\n",
                                                        a, b, c, d, e, a, d, b, c, e,
                                                        (a * 100 + d * 10 + b) * (c * 10 + e));
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        System.out.println(count);
    }
}

 

  4.三十九层台阶一共走偶数步,在只能迈上1个或2个台阶的条件下一共要多少种走法?

public class One5{
    public static void main(String[] args) {
        f(39,0);
        System.out.println(count);
    }
/**
 * 
 * @param i 剩下的台阶数
 * @param j 已走的台阶数
 */
    static int count;
    private static void f(int i, int j) {
        // TODO Auto-generated method stub
        if(i<0) {
            return;
        }
        if(i == 0) {
   
   //39层台阶全走完
            if(j%2==0) {
                count++;
            }
            return;
        }
        f(i-1,j+1);//一步走一个台阶
        f(i-2,j+1);//一步走两个台阶
        
    }
}

 

转载于:https://www.cnblogs.com/chaunceyji/p/10503617.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/128792.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ❤️爆肝十二万字《python从零到精通教程》,从零教你变大佬❤️(建议收藏)[通俗易懂]

    ❤️爆肝十二万字《python从零到精通教程》,从零教你变大佬❤️(建议收藏)[通俗易懂]文章目录强烈推荐系列教程,建议学起来!!一.pycharm下载安装二.python下载安装三.pycharm上配置python四.配置镜像源让你下载嗖嗖的快4.1pycharm内部配置4.2手动添加镜像源4.3永久配置镜像源五.插件安装(比如汉化?)5.1自动补码神器第一款5.2汉化pycharm5.3其它插件六.美女背景七.自定义脚本开头八、这个前言一定要看九、python入门十、python缩进十一、Python注释1.单行注释2.多行注释十二、Python变量1.变量定义理解2.变量名命名3.分

    2022年6月9日
    28
  • LAMP环境搭建与配置(一)

    LAMP环境搭建与配置(一)LAMP是LinuxApacheMySQLPHP的简写,即把Apache、MySQL以及PHP安装在Linux系统上,组成一个环境来运行PHP的脚本语言,通常是网站。Apache是最常用的web服务软件,而MySQL是比较小型的数据库软件,这两个软件以及PHP都可以安装在一台机器上,也可以分开安装,但Apache和PHP必须安装在同一台机器上,因为PHP是作为Apache的一个模块存在的。…

    2022年5月3日
    45
  • 7、 正则化(Regularization)

    7、 正则化(Regularization)7.1过拟合的问题到现在为止,我们已经学习了几种不同的学习算法,包括线性回归和逻辑回归,它们能够有效地解决许多问题,但是当将它们应用到某些特定的机器学习应用时,会遇到过拟合(over-fittin

    2022年7月4日
    33
  • 如何让虚拟机的Ubuntu上网?

    如何让虚拟机的Ubuntu上网?学习于韦工百问科技-悦己方能悦人,感谢!我的环境:unbuntu16.04特别注意:如果你使用的虚拟机和Ubuntu不一样,现象可能不一样,请具体情况具体分析。一、为什么要让虚拟机中的Ubuntu上网?想在线安装软件,下载git源码包,或者要用浏览器浏览网页二、虚拟机中的Ubuntu有几种上网方式?通常有2种,NAT、桥接三、NAT上网怎么用…

    2022年5月19日
    48
  • mac idea 激活码(JetBrains全家桶)「建议收藏」

    (mac idea 激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月22日
    117
  • git的安装和配置

    git的安装和配置

    2021年10月16日
    49

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号