大家好,我是snippet,今天是刷蓝桥真题的第十八天,下面是我今天前面两个题的题解
目录
一、排序字母
题目内容:
问题描述
本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。
小蓝要把一个字符串中的字母按其在字母表中的顺序排列。
例如,LANQIAO 排列后为 AAILNOQ。
又如,GOODGOODSTUDYDAYDAYUP 排列后为 AADDDDDGGOOOOPSTUUYYY。
请问对于以下字符串,排列之后字符串是什么?
WHERETHEREISAWILLTHEREISAWAY
运行限制
- 最大运行时间:1s
- 最大运行内存: 512M
解题思路:
对字符串进行排序输出即可
代码:
package 蓝桥杯31天真题冲刺.Day18;
import java.util.Arrays;
/**
* @author snippet
* @data 2023-03-21
* 排列字母-蓝桥云课
*/
public class T1_排列字母 {
public static void main(String[] args) {
String s = "WHERETHEREISAWILLTHEREISAWAY";
char[] c = s.toCharArray();
Arrays.sort(c);
System.out.println(c);
}
}
二、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 蓝桥杯31天真题冲刺.Day18;
import java.util.Scanner;
/**
* @author snippet
* @data 2023-03-21
* GCD-蓝桥云课
*/
public class T2_GCD {
static long a,b,ans;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
a = sc.nextLong();
b = sc.nextLong();
long c = b - a;
ans = c - (a % c);
System.out.println(ans);
}
}
三、选数异或
题目内容:
解题思路:
代码:
四、背包与魔法
题目链接:背包与魔法 - 蓝桥云课 (lanqiao.cn)
题目内容:
解题思路:
代码: