美文网首页
蓝桥杯算法题练习

蓝桥杯算法题练习

作者: tomlao | 来源:发表于2018-11-22 11:34 被阅读0次

1.入门训练 Fibonacci数列

傅里叶级数

最基础的,用java,普通无脑递归必爆。

import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        int[] arr=new int[n+2];  //注意数组越界
        arr[1]=1;arr[2]=1;
        for(int i=3;i<=n;i++) {
            arr[i]=(arr[i-1]+arr[i-2])%10007;
        }
        System.out.println(arr[n]);
    }
}

2.入门训练 圆的面积

圆的面积

注意输出的小数位格式方法。

import java.text.DecimalFormat;
import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        double PI=3.14159265358979323;
        DecimalFormat df=new DecimalFormat("0.0000000");
        System.out.println(df.format(PI*n*n));
    }
}

3.入门训练 序列求和

序列求和
数据规模

注意数据的规模,暴力解决不了问题,int也会爆炸。

import java.text.DecimalFormat;
import java.util.*;
public class Main {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        long n=sc.nextLong();
        System.out.println((1+n)*n/2);      
    }
}

4.基础练习 时间转换

时间转换

注意输出的是printf,不是println这个要字符串拼接的。

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int h, m, s;
        h = m = s = 0;
        if (n / 3600 > 0) {
            h = n / 3600;
            n = n % 3600;
        }
        if (n / 60 > 0) {
            m = n / 60;
            n = n % 60;
        }
        s = n;
        System.out.printf("%d:%d:%d", h, m, s);//注意输出的是printf
    }
}

5.基础练习 字符串对比

字符串对比
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String a=sc.nextLine();
        String b=sc.nextLine();
        
        if(a.length()!=b.length()) {
            System.out.println("1");
        }else if(a.equals(b)) {
            System.out.println("2");
        }else if(a.length()==b.length() && a.toLowerCase().equals(b.toLowerCase())) {
            System.out.println("3");
        }else {
            System.out.println("4");
        }
    }
}

6.基础练习 分解质因数

分解质因数

抄来的,好好看思路。

import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt(), b = sc.nextInt();
        for (int i = a; i <= b; i++) {
            System.out.println(resolvePrime(i));
        }
    }

    public static String resolvePrime(int n) {
        StringBuilder sb = new StringBuilder(n + "=");  //保存结果字符
        int i = 2;                  // 定义最小素数
        while (i <= n) {            // 进行辗转相除法
            if (n % i == 0) {       // 若n能整除i,则i是n的一个因数
                sb.append(i + "*");
                n /= i;             // 同时将 n除以i的值赋给n
                i = 2;              // 将i重新置为2
            } else {
                i++;                // 若无法整除,则i自增
            }
        }
        //去除最后的一个*
        return sb.toString().substring(0, sb.toString().length() - 1);
    }
}

相关文章

  • 蓝桥杯算法题练习

    1.入门训练 Fibonacci数列 最基础的,用java,普通无脑递归必爆。 2.入门训练 圆的面积 注意输出的...

  • 蓝桥杯有感

    寒假线上学习的时候就开始为这次蓝桥杯做准备,刷算法题,看算法书,学习算法知识,这一周终于迎来了期待已久的蓝桥杯。...

  • 【蓝桥杯python】小白的艰难刷题之路。A+B问题

    先给大家献上蓝桥杯的练习系统,因为我是新手刷题人所以先更新一下基础练习的普通试题集。“蓝桥杯”练习系统 (lanq...

  • 蓝桥杯真题题解收藏

    收藏一些在网上发现的,觉得写的不错的蓝桥杯真题题解内容,给学生练习备战蓝桥杯时所用。2020蓝桥杯省赛第二场C组_...

  • 最近一周计划

    1.准备蓝桥杯竞赛,每天至少抽出一个小时练习算法 2.小组MySQL进度放慢,适当分配时间给算法练习 3.养成早睡...

  • 算法

    今天的蓝桥杯让我知道算法的难度,感觉自己平时刷的题都是小case。我的天哪,真是太难了。还是多练练算法吧,平时没事...

  • 蓝桥杯算法题:核桃的数量

    题目 小张是软件项目经理,他带领 3 个开发组。工期紧,今天都在加班呢。为鼓舞士气,小张打算给每个组发一袋核桃(据...

  • 蓝桥杯 算法训练

    1.审美课 这题如果用string暴力运算的话最后一个测试点会超时,所以要使用位运算。2进制的输入可以这样:x=(...

  • 蓝桥(算法进阶题)

    算法提高 求最大值 时间限制:1....

  • [蓝桥杯]输入输出格式练习

    问题 1569: [蓝桥杯][算法提高VIP]输入输出格式练习 题目描述 按格式格式读入一个3位的整数、一个实数、...

网友评论

      本文标题:蓝桥杯算法题练习

      本文链接:https://www.haomeiwen.com/subject/ggrhqqtx.html