第十四届蓝桥杯三月真题刷题训练——第 18 天

目录

第 1 题:排列字母

问题描述

运行限制

代码:

第 2 题:GCD_数论 

问题描述

输入格式

输出格式

样例输入

样例输出

评测用例规模与约定

运行限制

第 3 题:选数异或

第 4 题:背包与魔法


第 1 题:排列字母

问题描述

本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

小蓝要把一个字符串中的字母按其在字母表中的顺序排列。

例如,LANQIAO 排列后为 AAILNOQ。

又如,GOODGOODSTUDYDAYDAYUP 排列后为 AADDDDDGGOOOOPSTUUYYY。

请问对于以下字符串,排列之后字符串是什么?

WHERETHEREISAWILLTHEREISAWAY

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 512M

代码:

package 第十四届蓝桥杯三月真题刷题训练.day18;

import java.io.*;
import java.util.Arrays;

/**
 * @author yx
 * @date 2023-03-21 11:46
 */
public class 排列字母 {
    static PrintWriter out =new PrintWriter(System.out);
    static BufferedReader ins=new BufferedReader(new InputStreamReader(System.in));
    static StreamTokenizer in=new StreamTokenizer(ins);
    /**
     * 输入
     * in.nextToken()
     * int a= (int)in.nval;
     *
     * 输出
     * out.print();
     * out.flush();
     *
     * 读文件:
     * BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("C:\\Users\\yx\\Desktop\\primes.txt")));
     * String s = br.readLine();s读取每一行数据
     * if (s == null)break;读取文件终止的语句
     **/
    public static void main(String[] args) throws IOException {
        char[] arr=ins.readLine().toCharArray();
        Arrays.sort(arr);
        out.println(arr);
        out.flush();
    }
}

第 2 题:GCD_数论 

 

问题描述

给定两个不同的正整数 a,b, 求一个正整数 k 使得 gcd(a+k,b+k)尽可能 大, 其中 gcd⁡(a,b) 表示 a 和 b 的最大公约数, 如果存在多个 k, 请输出所有满 足条件的 k 中最小的那个。

输入格式

输入一行包含两个正整数 a,b 用一个空格分隔。

输出格式

输出一行包含一个正整数 k 。

样例输入

5 7

样例输出

1

评测用例规模与约定

对于 20% 的评测用例,a<b≤10^5;

对于 40% 的评测用例, a<b≤10^9;

对于所有评测用例, 1≤a<b≤10^18 。

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 512M
package 第十四届蓝桥杯三月真题刷题训练.day18;

import java.io.*;
import java.util.Scanner;

/**
 * @author yx
 * @date 2023-03-21 11:50
 */
public class GCD_数论 {
    static PrintWriter out =new PrintWriter(System.out);
    static BufferedReader ins=new BufferedReader(new InputStreamReader(System.in));
    static StreamTokenizer in=new StreamTokenizer(ins);
    /**
     * 输入
     * in.nextToken()
     * int a= (int)in.nval;
     *
     * 输出
     * out.print();
     * out.flush();
     *
     * 读文件:
     * BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("C:\\Users\\yx\\Desktop\\primes.txt")));
     * String s = br.readLine();s读取每一行数据
     * if (s == null)break;读取文件终止的语句
     **/
    public static void main(String[] args) throws IOException {
        //数论知识
        Scanner scanner = new Scanner(System.in);
        long a=scanner.nextLong();
        long b=scanner.nextLong();
        long c=b-a;
        long k=c-(a%c);
        System.out.println(k);
    }

}

第 3 题:选数异或

第 4 题:背包与魔法

今天开了一晚上会,下次补题!

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小羊不会飞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值