前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【第一天】蓝桥杯备战

【第一天】蓝桥杯备战

作者头像
小舒不服输
发布2024-01-30 13:50:04
1180
发布2024-01-30 13:50:04
举报
文章被收录于专栏:编程乐园·
  • 1、 门牌号
  • 2、卡片
  • 3、分数

1、 门牌号

https://www.lanqiao.cn/problems/592/learning/

解法一:暴力遍历

代码语言:javascript
复制
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        //在此输入您的代码...
        scan.close();
         int count = 0;
         for(int i = 1 ; i <= 2020 ; i++) {
           int num = i;
           while(num > 0) {
             if(num % 10 == 2) {
               count++;
             }
             num /= 10;
           }
         }
         System.out.println(count);
    }
}

解法二:遍历从1~2020,将每个数字转化为字符串,遍历字符串,记录有多少个‘2’

代码语言:javascript
复制
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        //在此输入您的代码...
        int count = 0;
        for(int i = 0;i <= 2020; i++){
          String str = String.valueOf(i);
          for(int j = 0;j < str.length(); j++){
            if(str.charAt(j) == '2')
              count++;
          }
        }

        System.out.print(count);
        scan.close();
    }
}

2、卡片

https://www.lanqiao.cn/problems/1443/learning/

解法:先创建一个元素个数为10数组,使数组每个元素初始化为2021,从1开始计数,数字里有的数字对应的数组下标-1,直到要减的数字对应数组下标的值已<0,停止程序。

代码语言:javascript
复制
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改

public class Main 
{
    public static void main(String[] args) 
    {
        int num[]= new int[10];
        for(int i = 0 ; i< 10; i++ ) {
          num[i]=2021;
        }
        int temp=0;
        int b = 0;
        for(int i=1;;i++)
        {
          temp=i;
          while(temp!=0)
          {
            b=temp%10;
            num[b]--;
            if(num[b]<0)
            {
              System.out.println(i-1);
              return;
            }
              
            temp=temp/10;
          }
        }
    }
}

3、分数

https://www.lanqiao.cn/problems/610/learning/

解法一:运用数学知识,分为分子和分母,依次计算

代码语言:javascript
复制
public class Main
{
  public static void main (String[] args)
  {
    int firstfm = 1, firstfz = 1;
    int num = 0;
    for (int i = 1; i < 20; i++)
    {
       firstfm *= 2;
       firstfz += firstfm;
    }
    System.out.printf ("%d/%d\n",firstfz,firstfm);
  }
}

解法二:根据逻辑推理,直接得出答案

代码语言:javascript
复制
public class Main
{
  public static void main (String[] args)
  {
    System.out.printf (39/20);
  }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-01-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、 门牌号
  • 2、卡片
  • 3、分数
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档